zoukankan      html  css  js  c++  java
  • Leetcode543.Diameter of Binary Tree二叉树的直径

    给定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过根结点。

    示例 :

    给定二叉树

               1

               /

             2    3

            /

          4  5

    返回 3, 它的长度是路径 [4,2,1,3] 或者 [5,2,1,3]。

    注意:两结点之间的路径长度是以它们之间边的数目表示。

    class Solution {
    public:
        int res = 0;
        int diameterOfBinaryTree(TreeNode* root) {
            if(root == NULL)
                return 0;
            res = max(res, GetDepth(root ->left) + GetDepth(root ->right) + 1);
            diameterOfBinaryTree(root ->left);
            diameterOfBinaryTree(root ->right);
            return res - 1;
        }
    
        int GetDepth(TreeNode* root)
        {
            if(root == NULL)
                return 0;
            return 1 + max(GetDepth(root ->left), GetDepth(root ->right));
        }
    };

  • 相关阅读:
    python列表[]中括号
    python元组()小括号
    python break continue跳过和跳出循环
    python FOR循环
    python while循环
    python if elif else判断语句
    python使用变量
    python -input用户输入
    pycharm模板
    港股收费
  • 原文地址:https://www.cnblogs.com/lMonster81/p/10434066.html
Copyright © 2011-2022 走看看