У меня есть программа, которая печатает все возможности перестановок для данной строки. Но он является статическим, я жестко закодирован 3 для циклов, предполагая, что строка будет иметь длину 3. Но если мне нужно сделать ее динамической, пользователь может ввести ввод строки длиной 5. Так что я спрашиваю, если Я могу вводить петли в соответствии с вводом пользователя?Как сделать следующий код динамическим/можно вводить для циклов?
import java.util.*;
import java.lang.*;
class Ideone
{
public static void main (String[] args) throws java.lang.Exception
{
// your code goes here
String input = "abc";
int i=0,j=0,k=0;
for(i=0;i<3;i++){
for(j=0;j<3;j++){
for(k=0;k<3;k++){
System.out.println(input.charAt(i)+""+input.charAt(j)+""+input.charAt(k));
}
}
}
}
}
Рекурсия обычно используется для таких задач, например. http://stackoverflow.com/a/4240323/1413133 –
Рекурсивная функция! – hurricane
Есть ли альтернатива рекурсии, так как я не очень хорошо разбираюсь в этом – gates