111. 二叉树的最小深度

给定一个二叉树,找出其最小深度。

最小深度是从根节点到最近叶子节点的最短路径上的节点数量。

链接

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
let minDep = Number.MAX_VALUE
function minDepth(root: TreeNode | null): number {
if (root === null) return 0
minDep = Number.MAX_VALUE
traverse(root, 1)
return minDep
};

function traverse(root: TreeNode | null, depth: number): void {
if (root === null || depth > minDep) {
return
}
if (root.left === null && root.right === null) {
minDep = minDep > depth ? depth : minDep
return
}
traverse(root.left, depth + 1)
traverse(root.right, depth + 1)
}