zoukankan      html  css  js  c++  java
  • [LeetCode]题解(python):111 Minimum Depth of Binary Tree

    题目来源


    https://leetcode.com/problems/minimum-depth-of-binary-tree/

    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.


    题意分析


    Input: a binary tree

    Output: leaf node 的最小深度

    Conditions: 注意一定要是leaf节点,求leaf节点的最小深度


    题目思路


    递归,注意与求最大深度不同


    AC代码(Python)

     1 # Definition for a binary tree node.
     2 # class TreeNode(object):
     3 #     def __init__(self, x):
     4 #         self.val = x
     5 #         self.left = None
     6 #         self.right = None
     7 
     8 class Solution(object):
     9     def minDepth(self, root):
    10         """
    11         :type root: TreeNode
    12         :rtype: int
    13         """
    14         if root == None:
    15             return 0
    16         if root.left == None and root.right != None:
    17             return self.minDepth(root.right) + 1
    18         if root.left != None and root.right == None:
    19             return self.minDepth(root.left) + 1
    20         return min(self.minDepth(root.left), self.minDepth(root.right)) + 1
    21         
  • 相关阅读:
    dp
    康拓展开
    MST + 树形 dp
    树上对抗搜索
    求树上任意一点所能到达的最远距离
    将一棵树变成一个环
    树形dp
    区间dp
    区间dp
    day07作业
  • 原文地址:https://www.cnblogs.com/loadofleaf/p/5502344.html
Copyright © 2011-2022 走看看