欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 金融 > Leetcode543. 二叉树的直径(HOT100)

Leetcode543. 二叉树的直径(HOT100)

2025/7/3 22:16:29 来源:https://blog.csdn.net/kitesxian/article/details/144182967  浏览:    关键词:Leetcode543. 二叉树的直径(HOT100)

链接

代码:

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

题解:

要求最大直径,其实有点类似于深度,以root节点为例,直径最大就是左子树的3+右子树的4,答案就是7。

对于二叉树来说,我们使用dfs遍历所有点,自下而上,把子节点的值返回给父节点,最终算出整个树的最大直径。

还有一个注意的点:给上一层返回的时候应该返回多少?当然是你往左走(left的值)和往右走(right)的值的最大值,然后再加上1--------上一层来到当前节点,也需要走一步。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词