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

687. Longest Univalue Path

时间:2018-06-09 20:31:34      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:win   stun   函数   ==   color   syn   return   turn   nod   

 1 /**
 2  * Definition for a binary tree node.
 3  * struct TreeNode {
 4  *     int val;
 5  *     TreeNode *left;
 6  *     TreeNode *right;
 7  *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
 8  * };
 9  */
10 
11 static int wing=[]()
12 {
13     std::ios::sync_with_stdio(false);
14     cin.tie(NULL);
15     return 0;
16 }();
17 
18 class Solution 
19 {
20 public:
21     int res=0;
22     int longestUnivaluePath(TreeNode* root) 
23     {
24         if(root==NULL)
25             return 0;
26         count(root);
27         return res;
28     }
29     
30     int count(TreeNode* root)
31     {
32         int l=root->left?count(root->left):0;
33         int r=root->right?count(root->right):0;
34         int resl=root->left&&root->left->val==root->val?l+1:0;
35         int resr=root->right&&root->right->val==root->val?r+1:0;
36         res=max(res,resl+resr);
37         return max(resl,resr);
38     }
39 };

这个题要注意一下,容易错,辅助遍历函数有返回值。

687. Longest Univalue Path

标签:win   stun   函数   ==   color   syn   return   turn   nod   

原文地址:https://www.cnblogs.com/zhuangbijingdeboke/p/9160621.html

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