美文网首页
二叉树的最小深度

二叉树的最小深度

作者: 422ccfa02512 | 来源:发表于2020-11-18 20:02 被阅读0次

    题目

    难度级别:简单

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

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

    说明:叶子节点是指没有子节点的节点。

    示例 1:

    输入:root = [3,9,20,null,null,15,7]
    输出:2

    示例 2:

    输入:root = [2,null,3,null,4,null,5,null,6]
    输出:5

    解题思路

    使用广度优先搜索,通过将每一层得节点添加至队列中,知道算到队列中当前节点left值与right值都为空。

    var minDepth = function(root) {
        if (root === null) return 0
        
        let num = 1
        const queue = []
    
        queue.push(root)
    
        while(queue.length) {
            let len = queue.length
    
            for (let i = 0; i < len; i++) {
                let currentNode = queue.shift()
    
                if (currentNode.left === null && currentNode.right === null) 
                    return num++
                if (currentNode.left)
                    queue.push(currentNode.left)
                if (currentNode.right)
                    queue.push(currentNode.right) 
            }
            num ++
        }
        
        return num
    };
    

    题目来源:力扣(LeetCode)
    链接:https://leetcode-cn.com/problems/minimum-depth-of-binary-tree

    相关文章

      网友评论

          本文标题:二叉树的最小深度

          本文链接:https://www.haomeiwen.com/subject/luqhiktx.html