從上往下列印二叉樹

2021-08-26 18:08:09 字數 664 閱讀 4694

從上往下列印出二叉樹的每個節點,同層節點從左至右列印。

# -*- coding:utf-8 -*-

# class treenode:

# def __init__(self, x):

# self.val = x

# self.left = none

# self.right = none

class

solution:

# 返回從上到下每個節點值列表,例:[1,2,3]

defprintfromtoptobottom

(self, root):

# write code here

ret =

if root == none:

return ret

#廣度優先搜尋

#bfs儲存當前層的節點

#tbfs儲存當前層的左右子節點

bfs = [root]

while(bfs):

tbfs =

for node in bfs:

if node.left:

if node.right:

bfs = tbfs[:]

return ret

從上往下列印二叉樹

從上往下列印二叉樹需要乙個雙端佇列,stl提供了deque容器符合我們的要求,和測試 如下 include include include using namespace std struct binarytreenode binarytreenode createbinarytreenode in...

從上往下列印二叉樹

題目描述 從上往下列印出二叉樹的每個節點,同層節點從左至右列印。思路 用佇列儲存將要列印的節點,出佇列時,將左節點和右節點分別加入佇列當中,直到隊列為空,列印完畢。public arraylist integer printfromtoptobottom treenode root queue qu...

從上往下列印二叉樹

題目 從上往下列印出二叉樹的每個結點,同一層的結點按照從左到右的順序列印。程式 include include include struct binarytreenode 函式名稱 createbinarytree 函式功能 通過二叉樹的先序序列建立二叉樹 輸入引數 proot 二叉樹的根節點 st...