62,615
社区成员
发帖
与我相关
我的任务
分享
public static void main(String[] args) {
int[] nums = {12,23,11,33,15,24};
method(nums, 46);
}
public static void method(int[] nums, int sum){
List<Integer> list = new LinkedList<Integer>();
method(nums, sum, list, -1);
}
private static void method(int[] nums, int sum, List<Integer> list, int index){
if(sum == 0){
for(int i : list){
System.out.printf("%d ", i);
}
System.out.println();
}else if(sum > 0){
for (int i = index + 1; i < nums.length; i++) {
list.add(nums[i]);
method(nums, sum - nums[i], list, i);
list.remove(list.size() - 1);
}
}
}