iT邦幫忙

2025 iThome 鐵人賽

DAY 6
0
佛心分享-IT 人自學之術

從Leetcode到實務的橋樑系列 第 15

Day15( 39. Combination Sum)

  • 分享至 

  • xImage
  •  

題目介紹:
要求給定一組無重複的正整數candidates和一個目標數字target,找出所有候選數字組合,使它們的和等於目標數字而每個數字可以無限次使用。這題考驗對回溯演算法的理解,需探索所有可能組合,同時避免重複解答。
解題流程:
使用回溯法,從每個候選數字開始累加到目標,超過則剪掉,等於則記錄解,遞迴探索所有可能組合。
程式碼及執行結果截圖:
https://ithelp.ithome.com.tw/upload/images/20250926/20168871i2tqjpkS2K.png
學習心得:
這題讓我更加練習回溯演算法的核心思路:在可能的選擇中探索每一條路徑,遇到不符合條件的立即回退,避免浪費計算。起初會想用暴力法生成所有組合再篩選,但效率極低。透過回溯,我學會了如何用遞迴 + 剪掉快速找到目標組合,同時避免重複結果。這題也提醒我注意邊界條件,例如目標值小於候選數字時應立即返回。
延伸邏輯時事面:
1.金融投資組合:設計股票或基金的投資組合,使總資金達到預期目標收益。

2.餐飲與菜單設計:組合不同食材以滿足卡路里或營養目標。

3.產品推薦系統:在電商平台上組合不同商品滿足客戶需求或促銷條件。


上一篇
Day 14(19. Remove Nth Node From End of List)
下一篇
Day 16(LeetCode 40. Combination Sum II)
系列文
從Leetcode到實務的橋樑18
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言