每日一題 組合總和 II(中等)

2021-10-09 08:35:13 字數 787 閱讀 9505

組合總和 ii

給定乙個陣列 candidates 和乙個目標數 target ,找出 candidates 中所有可以使數字和為 target 的組合。

示例 1:

輸入: candidates = [10,1,2,7,6,1,5], target = 8, 所求解集為: [ [1, 7],

[1, 2, 5], [2, 6], [1, 1, 6] ]

示例 2:

輸入: candidates = [2,5,2,1,2], target = 5, 所求解集為: [ [1,2,2], [5] ]

思路:

class

solution

public

void find (

int[

] candidates,

int target,

int index)

//重點去重

for(

int i=index; i)//做出選擇

list.

add(candidates[i]);

find

(candidates,target-candidates[i]

,i+1);

//撤銷選擇

list.

remove

(list.

size()

-1);

}}}}

每日一題 40 組合總和II

每日一題?40.組合總和ii 思考 看來我還在回溯的窩裡,一直都沒有出去 這題的難點應該是在剪枝。首先按照39題的方法,將回溯函式中的引數由i改為i 1,但依舊有重複元素出現,為何 因為陣列本身就有重複元素,最後一步刪去的元素和下一步加進來的元素相等,這種情況我們需要剪枝剪掉 list res ne...

2020 9 11 每日一題 組合總和 III

找出所有相加之和為 n 的 k 個數的組合。組合中只允許含有 1 9 的正整數,並且每種組合中不存在重複的數字。說明 所有數字都是正整數。解集不能包含重複的組合。示例 1 輸入 k 3,n 7 輸出 1,2,4 示例 2 輸入 k 3,n 9 輸出 1,2,6 1,3,5 2,3,4 怎麼又是組合總...

每日一題 32組合總和

給定乙個無重複元素的陣列 candidates 和乙個目標數 target 找出 candidates 中所有可以使數字和為 target 的組合。candidates 中的數字可以無限制重複被選取。說明 所有數字 包括 target 都是正整數。解集不能包含重複的組合。示例 1 輸入 candid...