题解 | #二叉树的最小深度#

二叉树的最小深度

http://www.nowcoder.com/practice/e08819cfdeb34985a8de9c4e6562e724

# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None

#
# 
# @param root TreeNode类 
# @return int整型
#
import sys
sys.setrecursionlimit(1000000)  # 提高递归深度

class Solution:
    def run(self , root ):
        # write code here
        def do_tree(cur):
            if cur is None:
                return 0
            if cur.left is None and cur.right is None:
                return 1
            if cur.left is None or cur.right is None:
                return max([do_tree(cur.left), do_tree(cur.right)]) + 1
            return min([do_tree(cur.left), do_tree(cur.right)]) + 1
        n = do_tree(root)
        return n
全部评论

相关推荐

05-21 15:47
门头沟学院 Java
浪漫主义的虹夏:项目有亮点吗,第一个不是纯玩具项目吗,项目亮点里类似ThreadLocal,Redis储存说难听点是花几十分钟绝大部分人都能学会,第二个轮子项目也没体现出设计和技术,想实习先沉淀,好高骛远的自嗨只会害了自己
点赞 评论 收藏
分享
评论
3
2
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务