111.二叉树的最小深度

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution:
    def minDepth(self, root: Optional[TreeNode]) -> int:
        if root == None:
            return 0
        def dfs(node):
            if node == None:
                return 0
            if node.left == None and node.right == None:
                return 1
            if node.left == None and node.right!= None:
                return dfs(node.right)+1
            if node.left != None and node.right == None:
                return dfs(node.left)+1
            return min(dfs(node.left),dfs(node.right))+1      
        return dfs(root)  

题目链接:111. 二叉树的最小深度 - 力扣(LeetCode)

你可能感兴趣的:(python,二叉树,算法,蓝桥杯,深度搜索)