您需要在二叉樹的每一行中找到最大的值。
示例:輸入:
1
/ \3 2
/ \ \
5 3 9
輸出: [1, 3, 9]
# definition for a binary tree node.
# class treenode:
# def __init__(self, x):
# self.val = x
# self.left = none
# self.right = none
class solution:
def largestvalues(self, root):
""":type root: treenode
:rtype: list[int]
"""if root:
node_set = [root]
val_set = [root.val]
while node_set:
node_set_new =
value_set_new =
for node in node_set:
if node.left:
if node.right:
else:
continue
if len(value_set_new) != 0: # 出錯的地方
node_set = node_set_new
return val_set
else:
return
寫演算法題,要先手寫思路,在寫**,再根據**一行一行驗證思路,小心思路漏洞點 在每個樹行中找最大值
廢話絕對不說,但還是忍不住想打兩個字,就寫吧,正香吶!c版,主要是搞清題意 orz,論看清題意的重要性,要注意引數returnsize指的是陣列中元素的個數,也即樹的深度。還可以在前面直接使用遞迴法求出書的深度來替代maxsize,不過考慮到複雜性其實也就沒什麼必要了,要ac這道題maxsize取到...
在每個樹行中查詢最大值
題目 在乙個二叉樹中查詢每一層中的最大值 示例 definition for a binary tree node.public class treenode class solution if root.right null while queue.size 0 if node.right nul...
陣列中找最大值,求平均分
在乙個陣列中找最大值,用到的函式為max 這個函式很強大.max 找出最大值 eg arr array 張三 50,李四 80,王五 40,趙六 100 max max arr name array search max,arr echo 最高分為 max.姓名為 name 輸出 最高分為 100,...