iT邦幫忙

2025 iThome 鐵人賽

DAY 16
0
自我挑戰組

Leetcode 自學系列 第 16

自學Leetcode Day16

  • 分享至 

  • xImage
  •  

337. House Robber III
1.解題策略(動態規劃 + 後序遍歷 DFS)
為每個節點設計一個函式 dfs(TreeNode node),它會回傳一個 int[] 陣列:

  • res[0]:表示不偷這個節點時,最大收益
  • res[1]:表示偷這個節點時,最大收益
    2.範例說明
    Input:https://ithelp.ithome.com.tw/upload/images/20250930/201692412ut8iic7Ls.jpg
  • 偷 root(3) → 不能偷 2 和 3 → 3 + 3 + 1 = 7
  • 不偷 root(3) → 可以偷 2 和 3 → 2 + 3 = 5
  • 答案為 max(7, 5) = 7
    3.程式碼截圖:https://ithelp.ithome.com.tw/upload/images/20250929/20169241wgh4Vy4rGO.png
    4.學習心得:此次選的題目跟昨天的相似,所以這次有試著用昨天的解題方法去解看看,當然,過程雖然沒有那麼順利,但我還是有從錯誤中學習知識,我相信之後可以用這些知識去解很多題目。

上一篇
自學Leetcode Day15
系列文
Leetcode 自學16
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言