Я намерен найти все возможные подпоследовательности массиваВсе возможные подпоследовательности массива с помощью Java
Я пытался сделать это в 2-х различных способах
1) Метод 1
Я создаю строку со значениями в массиве
// all possible subsequences - all possible elements found by eleiminating zero or more characters
Public class StrManipulation{
public static void combinations(String suffix,String prefix){
if(prefix.length()<0)return;
System.out.println(suffix);
for(int i=0;i<prefix.length();i++)
combinations(suffix+prefix.charAt(i),prefix.substring(i+1,prefix.length()));
}
public static void main (String args[]){
combinations("","12345");
}
}
Проблемные --- работает только для отдельных цифровых символов
2) Способ 2
int a[] = new int[3];
a[0]=2;a[1]=3;a[2]=8;
List<Integer> al= new ArrayList<Integer>();
for(int i=0;i<3;i++)
al.add(a[i]);
int i, c;
for(c = 0 ; c < 3 ; c++)
{
for(i = c+1 ; i <= 3 ; i++)
{
List<Integer> X = al.subList(c,i);
for(int z=0;z<X.size();z++)
System.out.print(X.get(z)+" ");
System.out.println();
}
}
Проблема - Он генерирует подмассива только в качестве примера для массива 2 5 9 я получаю ---- [2] [2,5] [2,5,9] [5] [5,9] [9] Но это промахивается [2,9]
Так может ли кто-нибудь помочь мне с этим кодом?
Вы должны добавить тег Java, так как это язык, который вы используете. –