LeetCode 111 Minimum Depth of Binary Tree (Python)

Posted by 小明MaxMing on October 22, 2020

题目

Given a binary tree, find its minimum depth.

The minimum depth is the number of nodes along the shortest path from the root node down to the nearest leaf node.

Note: A leaf is a node with no children.

解题思路

从根节点开始进行BFS,记录深度,遇到的第一个叶节点就是答案

代码

class Solution:
    def minDepth(self, root: TreeNode) -> int:
        if not root:
            return 0
        q = [(root, 1)]
        while q:
            cur, depth = q.pop(0)
            if not cur.left and not cur.right:
                return depth
            if cur.left:
                q.append((cur.left, depth + 1))
            if cur.right:
                q.append((cur.right, depth + 1))

视频讲解 YouTube<--欢迎点击订阅

视频讲解 bilibili<--欢迎点击订阅