zoukankan      html  css  js  c++  java
  • 543. Diameter of Binary Tree(LeetCode)

    Given a binary tree, you need to compute the length of the diameter of the tree. The diameter of a binary tree is the length of the longest path between any two nodes in a tree. This path may or may not pass through the root.

    Example:
    Given a binary tree 

              1
             / 
            2   3
           /      
          4   5    
    

    Return 3, which is the length of the path [4,2,1,3] or [5,2,1,3].

    Note: The length of path between two nodes is represented by the number of edges between them.

     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 class Solution {
    11 public:
    12     int maxLength = 0;  
    13     int diameterOfBinaryTree(TreeNode* root) {
    14         help(root);
    15         return maxLength;
    16     }
    17     int help(TreeNode* root){  
    18         if(root == NULL) return 0;  
    19         int left = help(root->left);  
    20         int right = help(root->right);  
    21           
    22         maxLength = max(left + right, maxLength);  
    23           
    24         return max(left + 1, right + 1);  
    25     }  
    26 };
  • 相关阅读:
    python import语句
    python输出中文
    python字典的格式化字符串
    emacs查找替换
    emacs书签
    [转]Ubuntu11.10 更改登录界面背景(LightDM背景)
    ubuntu samba共享文件
    emacs笔记
    .NET登录验证码实现
    WEB标准学习实践(一)
  • 原文地址:https://www.cnblogs.com/wujufengyun/p/6876701.html
Copyright © 2011-2022 走看看