之字形列印二叉樹

2021-10-01 15:12:47 字數 605 閱讀 3114

請實現乙個函式按照之字形順序從上向下列印二叉樹。

即第一行按照從左到右的順序列印,第二層按照從右到左的順序列印,第三行再按照從左到右的順序列印,其他行以此類推。

樣例

輸入如下圖所示二叉樹[8, 12, 2, null, null, 6, 4, null, null, null, null]

8/ \

12 2

/ \6 4

輸出:[

[8], [2, 12], [6, 4]

]

/**

* definition for a binary tree node.

* struct treenode

* };

*/class

solution

level.

push_back

(t->val);if

(t->left) q.

push

(t->left);if

(t->right) q.

push

(t->right);}

return res;}}

;

之字形列印二叉樹

請實現乙個函式按照之字形列印二叉樹,即第一行按照從左到右的順序列印,第二層按照從右至左的順序列印,第三行按照從左到右的順序列印,其他行以此類推。include include include binarytree.h using namespace std void bprint binarytre...

之字形列印二叉樹

思路 首先我們需要逐層列印二叉樹,然後根據每一層的狀態判定是從左到右,還是從右到左。首先問題的核心其實是從上到下,從左到右列印二叉樹,只不過後面題目多了兩個要求,所以我們2 的大體框架應該是基於從上到下列印二叉樹 其次逐層列印二叉樹,實際上就是讓我們對每一層設定標誌位,然後根據標誌位去決定列印的情況...

之字形列印二叉樹

題目描述 請實現乙個函式按照之字形列印二叉樹,即第一行按照從左到右的順序列印,第二層按照從右至左的順序列印,第三行按照從左到右的順序列印,其他行以此類推。class treenode def init self,x self.val x self.left none self.right none ...