第32題 從上往下列印二叉樹

2021-09-24 13:08:21 字數 478 閱讀 7186

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

列印根節點0,然後列印左右節點(1和2),接著列印左節點1的左右節點(3和4),接著列印右節點2的左右節點(5和6)

可以乙個輔助的佇列儲存住先後關係(1 2 3 4 5 6)

取出乙個節點,他的左右孩子就入佇列。

終止的條件是輔助隊列為空。

public class solution 

//1.建立乙個輔助佇列

dequedeque=new linkedlist();

//2.首先把根節點放入佇列,取出乙個父親,放入兩個孩子

deque.add(root);

//3.對輔助佇列的入佇列和出佇列的操作終止條件是隊列為空

while(!deque.isempty())

if(t.right!=null)

}return list;

}}

從上往下列印二叉樹

從上往下列印二叉樹需要乙個雙端佇列,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...