Программа на Java для возврата списка подмножеств заданного массива с использованием обратного отслеживания и рекурсии бJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Программа на Java для возврата списка подмножеств заданного массива с использованием обратного отслеживания и рекурсии б

Сообщение Anonymous »

Я написал программу для возврата списка, содержащего списки подмножеств заданного массива, с использованием обратного отслеживания и рекурсии, я назвал эту функцию subset типа void:

Код: Выделить всё

import java.util.ArrayList;
public class Main{
public static void main(String[] args) {
ArrayList nums = new ArrayList();
List list= new ArrayList();
int[] arr = {2,3,5};
subset(list,nums,arr,0);  //
System.out.println(list);
}
static void subset(List list,
ArrayList nums,
int[] arr, int index){
if(index==arr.length){
list.add(nums);
return  ;
}
int c = arr[index];
nums.add(c);
subset(list,nums,arr,index+1);   //
nums.remove(nums.size()-1);
subset(list,nums,arr, index+1);  //
return ;
}
}
Ожидания:

Код: Выделить всё

output={[],[],[],[],[],[],[],[]}
expected={[2,3,5],[2,3],[2,5],[2],[3,5],[3],[5],[]}
Почему выдает пустые списки?

Подробнее здесь: https://stackoverflow.com/questions/767 ... -backtrack
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»