码迷,mamicode.com
首页 > 其他好文 > 详细

687. Longest Univalue Path 687.最长单值路径

时间:2020-05-31 11:21:05      阅读:64      评论:0      收藏:0      [点我收藏+]

标签:help   col   click   ==   code   div   sed   val   节点   

可以是弯的,那不就是左右相加了吗?
跟之前节点的值比较时,此时可以把节点值node.val作为参数。这是这题特殊的地方。

 

想错了的一个地方:既然返回的是要拿来用的、用来计算的,就应该是DC left = traverse(root.left)这样

 

技术图片
class Solution {
    int length = 0;
    
    public int longestUnivaluePath(TreeNode root) {
        //cc
        if (root == null)
            return 0;
        
        helper(root, root.val);
        
        return length;
    }
    
    public int helper(TreeNode node, int value) {
        //cc
        if (node == null) 
            return 0;
        
        int left = helper(node.left, node.val);
        int right = helper(node.right, node.val);
        
        length = Math.max(length, left + right);
        
        if (node.val == value)
            return Math.max(left, right) + 1;
        
        return 0;
    }
}
View Code

 

687. Longest Univalue Path 687.最长单值路径

标签:help   col   click   ==   code   div   sed   val   节点   

原文地址:https://www.cnblogs.com/immiao0319/p/12996577.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!