543. Diameter of Binary Tree (二叉树)

来源:互联网 发布:java new一个女朋友 编辑:程序博客网 时间:2024/06/02 04:13

https://leetcode.com/problems/diameter-of-binary-tree/description/

题目:这道题让我们求二叉树的直径。

思路:求出每一个节点的左右子树的直径。更新最大值。然后当前节点的长度等于左右子树节点的最大值加1。

class Solution {public:    int dfs(TreeNode *root)    {        if(root==NULL) return 0;        int l=dfs(root->left);        int r=dfs(root->right);        sum=sum>l+r?sum:l+r;        return l>r?l+1:r+1;    }    int diameterOfBinaryTree(TreeNode* root) {        sum=0;        dfs(root);        return sum;    }    private:    int sum;};
原创粉丝点击