122 - 543 二叉树的直径
题目
1
/ \
2 3
/ \
4 5 解答
func max(a, b int) int {
if a > b {
return a
}
return b
}
func diameterOfBinaryTree(root *TreeNode) int {
if root == nil {
return 0
}
m := 0
depth(root, &m)
return m
}
func depth(root *TreeNode, m *int) int {
if root == nil {
return 0
}
l := depth(root.Left, m)
r := depth(root.Right, m)
*m = int(max(l+r, *m))
return int(max(l, r)) + 1
}Last updated