iT邦幫忙

2025 iThome 鐵人賽

0
自我挑戰組

Java × LeetCode-30天日記系列 第 27

Day 27:Binary Tree Level Order Traversal (LC #102)

  • 分享至 

  • xImage
  •  

題目理解
我的理解 : 給定一棵二元樹,要求輸出「每一層的節點值」,也就是從上到下、從左到右的層級遍歷結果。

方法

  1. 在遞迴時傳入「目前層級 level」。
  2. 若 level == result.size(),代表這一層還沒有建立 List,就先建立一個新的。
  3. 把目前節點值加入該層的 List。
  4. 接著遞迴呼叫左、右子節點,層級加 1。

https://ithelp.ithome.com.tw/upload/images/20251013/20169238rVVAKzNI4U.png

心得
我也更清楚了 result.size() 與 level 的關聯,當進入新的一層時,result.size() 會等於 level,這時候就要新增一個新的 list 來裝這一層的節點。


上一篇
Day 26:Invert Binary Tree (LC #226)
下一篇
Day 28:Validate Binary Search Tree (LC #98)
系列文
Java × LeetCode-30天日記30
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言