二叉树的最大深度

描述
求给定二叉树的最大深度,深度是指树的根节点到任一叶子节点路径上节点的数量。最大深度是所有叶子节点的深度的最大值。

题解

DFS

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
package main

type TreeNode struct {
Val int
Left *TreeNode
Right *TreeNode
}

/**
*
* @param root TreeNode类
* @return int整型
*/
func maxDepth( root *TreeNode ) int {
// write code here
if root == nil {
return 0
}
return max(maxDepth(root.Left), maxDepth(root.Right)) + 1
}

func max(left, rigth int) int {
if left > rigth {
return left
}
return rigth
}