Diamater Of Binary Tree
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
func diameterOfBinaryTree(root *TreeNode) int {
dia := 0
var walk func(root *TreeNode) int
walk = func(root *TreeNode) int {
if root == nil{
return 0
}
var leftDepth = walk(root.Left)
var rightDepth = walk(root.Right)
maxDia = max(dia, leftDepth+rightDepth)
return max(leftDepth,rightDepth) + 1
}
walk(root)
return maxDia
}