luoheng
12/27/2019 - 3:01 AM

minDepth

/**
 * Definition for a binary tree node.
 * type TreeNode struct {
 *     Val int
 *     Left *TreeNode
 *     Right *TreeNode
 * }
 */
func minDepth(root *TreeNode) int {
    if root == nil {
        return 0
    }
    left, right := minDepth(root.Left), minDepth(root.Right)
    min := left
    if left == 0 || right != 0 && left > right {
        min = right
    }
    return min + 1
}