Sagen wir n = 4
. Mit Rekursion möchte ich zurück:Summe der Zahlen mit Rekursion Java
1 1 1 1
1 1 2
1 3
2 1 1
2 2
3 1
4
Grundsätzlich möchte ich Nummer nehmen n
und mit durch Zahlen 1,2,3 kombiniert und 4 erzeugen alle möglichen Variationen, wenn die Anzahl der sum == n
.
Dies war meine erste Idee, aber es gibt mir
Exception in thread "main" java.lang.StackOverflowError
public static void test_2(String path, int sum, int n){
if(sum == n){
System.out.println(path);
} else {
test_2(path+"1 ", sum + 1, n);
test_2(path+"2 ", sum + 2, n);
test_2(path+"3 ", sum + 1, n);
test_2(path+"4 ", sum + 2, n);
}
}
Was ist mit '1 2 1'? Du willst es nicht, oder hast du es gerade vermisst? – Gendarme
Das habe ich vermisst, tut mir leid. – juku
upvoted für das Stellen von Hausaufgaben (vermutlich) und das Bereitstellen eigenen Codes. Froh, dass manche Leute verstehen, wie man hier Fragen stellt. – sinclair