切換
舊版
前往
大廳
主題

LeetCode - 107. Binary Tree Level Order Traversal II 解題心得

Not In My Back Yard | 2020-08-15 00:35:04 | 巴幣 0 | 人氣 314

題目連結:


題目意譯:
給定一二元樹,回傳其節點的從下到上(Bottom-Up)之階層探訪(Level-Order Traversal),即從左至右、一階一階地從葉節點到根節點。



範例測資:
例如:
給定二元樹 [3,9,20,null,null,15,7],
  3
 / \
9   20
   /  \
  15   7
回傳其由下至上階層尋訪為:
[
  [15,7],
  [9,20],
  [3]
]


解題思維:
關於階層探訪的作法,可以參見這題

不過因為要由下至上,所以也可以先衝到最底部,然後將動態陣列(因應這題的要求,對於 C++ 的話請用動態陣列包動態陣列,其中動態陣列可以使用 vector 這個容器)開到與深度同等大小。接著就根據每個節點的深度(至於深度值可以照著昨天的題目之作法去賦予給每一個節點)推進陣列中對應位置的存放的陣列之結尾。




此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大撥冗討論。

創作回應

更多創作