給定一棵二叉樹,返回它的最大深度
最大深度是指樹中最長路徑所擁有的結點數量
注意:葉子節點沒有子節點
例如:給定二叉樹[3,9,20,null,null,15,7]
它的返回值為33
/ \9 20
/ \
15 7
def maxdepth(self, root):
""":type root: treenode
:rtype: int
"""if not root:
return 0
curlevelnodelist = [root]
length = 0
while curlevelnodelist:
tempnodelist =
for node in curlevelnodelist:
if node.left is not none:
if node.right is not none:
curlevelnodelist = tempnodelist
length += 1
return length
def maxdepth(self, root):
""":type root: treenode
:rtype: int
"""if not root:
return 0
left = self.maxdepth(root.left)+1
right = self.maxdepth(root.right)+1
return max(left, right)
演算法題來自: 二叉樹最大路徑和 python 二叉樹最大路徑和
1.題目描述 輸入乙個二叉樹層次遍歷的結果,輸出這個二叉樹最大路徑和。路徑不一定從根節點開始和葉子節點結束。只要是連續的路徑就可以。如輸入 10,9,20,null,null,15,7 109 20 15 7 輸出 42 2.首先將乙個陣列還原成乙個二叉樹。然後根絕二叉樹的根節點返回最大路徑和。cl...
python實現二叉樹
初學python,需要實現乙個決策樹,首先實踐一下利用python實現乙個二叉樹資料結構。建樹的時候做了處理,保證建立的二叉樹是平衡二叉樹。coding utf 8 from collections import deque class node def init self,val,left non...
二叉樹的深度 二叉樹的深度 二叉樹最大寬度
題目 輸入一棵二叉樹的根節點,求該樹的深度。從根節點到葉節點依次經過的節點 含根 葉節點 形成樹的一條路徑,最長路徑的長度為樹的深度。例如 給定二叉樹 3,9,20,null,null,15,7 返回它的最大深度 3 根節點加上左右子樹的最大深度就是樹的最大深度。如下 class solution ...