Может ли кто-нибудь объяснить, почему это неправильно для генерации подмножеств мощности? - PullRequest
0 голосов
/ 04 августа 2020

Попытка создать подмножества мощности с помощью BackTracking! Но я не получаю желаемых результатов. Может ли кто-нибудь помочь, почему!?

public List<List<Integer>> subsets(int[] nums) {

    List<Integer> num = new ArrayList();
    
    for(int x:nums)
    {
        num.add(x);
    }
    
    List<List<Integer>> res = new ArrayList<>();
    
    getSols(res,num);
    return res;
}

public static void getSols(List<List<Integer>> res, List<Integer> num)
{   
    if(num.isEmpty())
    {
        return;
    }
    else
    {
    res.add(num);
    for(int i=0;i<num.size();i++)
    {   
        int temp = num.remove(i);
        System.out.println(count);
        getSols(count++,res,num);
        num.add(i, temp);
    }
    return;
    }
}

nums содержит массив целых чисел

...