給定乙個無重複元素的陣列 candidates 和乙個目標數 target ,找出 candidates 中所有可以使數字和為 target 的組合。
candidates 中的數字可以無限制重複被選取。
說明:所有數字(包括 target)都是正整數。
解集不能包含重複的組合。
示例 1:輸入: candidates = [2,3,6,7], target = 7,
所求解集為:
[[7],
[2,2,3]
]
示例 2:輸入: candidates = [2,3,5], target = 8,
所求解集為:
[[2,2,2,2],
[2,3,3],
[3,5]
]
public
class
p39_combinationsum
recursion
(candidates,0,
0, target,
newarraylist
());
return rlist;
}private
void
recursion
(int
candi,
int index,
int lastsum,
int target, list
list)
else
if(lastsum + candi[i]
> target)}if
(lastsum == target)
}}
思想:遞迴法求解
初始化index(乙個list解的開頭的數)為0,lastsum(list中當前所有數之和)為0,list(可能的乙個接)為空列表
candi陣列index開始遍歷,如果lastsum+candi[i]小於等於目標target,則遞迴,否則跳出遍歷
lastsum 等於target則輸出
leetcode習題集 77 組合
給定兩個整數 n 和 k,返回 1 n 中所有可能的 k 個數的組合。示例 輸入 n 4,k 2 輸出 2,4 3,4 2,3 1,2 1,3 1,4 public class p77partcombine n,k,0,newarraylist 0 return rlist private void...
LeetCode筆記 39組合總和
題目 給定乙個無重複元素的陣列candidates和乙個目標數target,找出candidates中所有可以使數字和為target的組合。candidates中的數字可以無限制重複被選取。說明 示例 1 輸入 candidates 2,3,6,7 target 7,所求解集為 7 2,2,3 示例...
LeetCode 39 組合總和
給定乙個無重複元素的陣列candidates和乙個目標數target,找出candidates中所有可以使數字和為target的組合。candidates中的數字可以無限制重複被選取。說明 示例 1 輸入 candidates 2,3,6,7 target 7,所求解集為 7 2,2,3 示例 2 ...