刷題系列 - Python用遞迴實現求二叉樹深度

張國平發表於2020-01-17

繼續刷題, Python用遞迴實現求二叉樹深度。

其實就是求二叉樹層級,比如一個單點就是一層,一個單點加左右兩個葉子節點就是兩層。


其實二叉樹問題用遞迴來求是比較快的。這個也是介紹的預設遞迴方法,就是如有子節點,遞迴,直到沒有子節點為止。

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None
class Solution:
    def maxDepth(self, root: TreeNode) -> int:
        if root == None:
            return 0
        else:
            leftDepth = self.maxDepth(root.left)
            rightDepth = self.maxDepth(root.right)
            return max(leftDepth,rightDepth) + 1


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22259926/viewspace-2673825/,如需轉載,請註明出處,否則將追究法律責任。

相關文章