給定二叉樹,按垂序遍歷返回其結點值。
對位於(x, y)
的每個結點而言,其左右子結點分別位於(x-1, y-1)
和(x+1, y-1)
。
把一條垂線從x = -infinity
移動到x = +infinity
,每當該垂線與結點接觸時,我們按從上到下的順序報告結點的值(y
座標遞減)。
如果兩個結點位置相同,則首先報告的結點值較小。
按x
座標順序返回非空報告的列表。每個報告都有乙個結點值列表。
示例 1:
示例 2:輸入:[3,9,20,null,null,15,7]
輸出:[[9],[3,15],[20],[7]]
解釋:
在不喪失其普遍性的情況下,我們可以假設根結點位於 (0, 0):
然後,值為 9 的結點出現在 (-1, -1);
值為 3 和 15 的兩個結點分別出現在 (0, 0) 和 (0, -2);
值為 20 的結點出現在 (1, -1);
值為 7 的結點出現在 (2, -2)。

樹的結點數介於輸入:[1,2,3,4,5,6,7]
輸出:[[4],[2],[1,5,6],[3],[7]]
解釋:根據給定的方案,值為 5 和 6 的兩個結點出現在同一位置。
然而,在報告 "[1,5,6]" 中,結點值 5 排在前面,因為 5 小於 6。
1
和1000
之間。
每個結點值介於0
和1000
之間。
987 二叉樹的垂序遍歷
給定二叉樹,按垂序遍歷返回其結點值。對位於 x,y 的每個結點而言,其左右子結點分別位於 x 1,y 1 和 x 1,y 1 把一條垂線從 x infinity 移動到 x infinity 每當該垂線與結點接觸時,我們按從上到下的順序報告結點的值 y 座標遞減 如果兩個結點位置相同,則首先報告的結...
演算法題 二叉樹的垂序遍歷
給你二叉樹的根結點 root 請你設計演算法計算二叉樹的 垂序遍歷 序列。對位於 row,col 的每個結點而言,其左右子結點分別位於 row 1,col 1 和 row 1,col 1 樹的根結點位於 0,0 二叉樹的 垂序遍歷 從最左邊的列開始直到最右邊的列結束,按列索引每一列上的所有結點,形成...
二叉樹層序遍歷 求二叉樹的層序遍歷
給定乙個二叉樹,返回該二叉樹層序遍歷的結果,從左到右,一層一層地遍歷 例如 給定的二叉樹是,該二叉樹層序遍歷的結果是 3 9,20 15,7 示例1 輸入 返回值 1 2 示例2輸入 返回值 1 2,3 4,5 解題思路 重點是如何把在一層的節點放到一起,設定乙個引數專門放一層的節點 class t...