LeetCode刷題筆記 40 組合總和 II

2021-10-02 09:45:44 字數 1202 閱讀 9185

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

candidates 中的每個數字在每個組合中只能使用一次。

說明:

示例 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

else

while

(beginsize()

&& sum+candidates[begin]

<= target)

} vectorint>>

combinationsum2

(vector<

int>

& candidates,

int target)

sort

(candidates.

begin()

, candidates.

end())

;backtrack

(candidates, target,0,

0);return res;

}private

: vectorint>> res;

vector<

int> nums;

};

可能是習慣減法了?

class

solution

while

(startsize()

&&target-candidates[start]

>=0)

} vectorint>>

combinationsum2

(vector<

int>

& candidates,

int target)

};

leetcode刷題 40組合總和2

給定乙個陣列 candidates 和乙個目標數 target 找出 candidates 中所有可以使數字和為 target 的組合。candidates 中的每個數字在每個組合中只能使用一次。此題思路與39題類似,利用回溯的方式,但是難點在於不能重複利用。避免重複要讓同一層級不出現相同的元素,卻...

LeetCode刷題筆記 39 組數總和

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

Leetcode刷題筆記

1.兩數之和給定乙個整數陣列nums 和乙個目標值target,請你在該陣列中找出和為目標值的那兩個整數,並返回他們的陣列下標。ps 你可以假設每種輸入只會對應乙個答案。但是,你不能重複利用這個陣列中同樣的元素。思路 用target減去nums中的每乙個數,並設立乙個字典來記錄對應的下標 class...