LeetCode 216. Combination Sum III(数字之和)

原题网址:https://leetcode.com/problems/combination-sum-iii/

Find all possible combinations of k numbers that add up to a number n, given that only numbers from 1 to 9 can be used and each combination should be a unique set of numbers.

Ensure that numbers within the set are sorted in ascending order.


Example 1:

Input: k = 3, n = 7

Output:

[[1,2,4]]


Example 2:

Input: k = 3, n = 9

Output:

[[1,2,6], [1,3,5], [2,3,4]]

方法:深度优先搜索。

public class Solution {
    private void find(int from, int sum, int[] nums, int step, List> results) {
        if (sum < 0) return;
        if (step == nums.length) {
            if (sum == 0) {
                Integer[] n = new Integer[nums.length];
                for(int i=0; i> combinationSum3(int k, int n) {
        List> results = new ArrayList<>();
        find(1, n, new int[k], 0, results);
        return results;
    }
}


你可能感兴趣的:(组合,深度优先搜索,求和)