二叉树的直径:左右子树的最大深度之和
目录
分析
二叉树的直径,就是==左右子树的最大深度之和==
- 所以遍历一遍二叉树的时候
- 在==后序位置==上随便计算一下左右子树的最大深度之和
var diameterOfBinaryTree = function (root) {
let res = 0;
function maxDepth(root) {
if (!root) return 0;
let l = maxDepth(root.left);
let r = maxDepth(root.right);
res = Math.max(res, l + r);
return 1 + Math.max(l, r);
}
maxDepth(root);
return res;
};
关于如何计算每个节点的最大深度,参考 104. 二叉树的最大深度