【LeetCode笔记】39. 组合总和(Java、DFS回溯、队列)
生活随笔
收集整理的這篇文章主要介紹了
【LeetCode笔记】39. 组合总和(Java、DFS回溯、队列)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 題目描述
- 思路 & 代碼
題目描述
- 講道理,像這種找可行集合解的問題,基本上都可以通過回溯 + 剪枝來做
思路 & 代碼
- sort()用于優化,多一個剪枝判斷,其實也可以不寫
- 雙向隊列deque:第一次用,隊列、棧肯定不能用,因為既有先進先出要求,又有先進后出要求(removeLast & 用于構造ArrayList);數組可以,但是要多傳一個下標值,比較麻煩。
- 用nowIndex來保證不會重復,相當于從左到右遍歷所有結果,而不重復遍歷
- deque只用一條就夠了,在回溯過程中不斷調整內容。
- nowNum > target的情況直接剪枝即可,已經沒有繼續走的必要了
總結
以上是生活随笔為你收集整理的【LeetCode笔记】39. 组合总和(Java、DFS回溯、队列)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux内核深度解析_十年磨一剑,第一
- 下一篇: java spring入门小程序_spr