J
Jo.J
Gast
Guten Tag,
Ich hänge an folgendem Problem fest und komme nicht weiter.
Die Aufgabe war eine rekursive Methode public void permute(...) in eine Klasse Combinatorics zu implementieren, die für ein übergebenes int-Array alle Permutationen mit System.out.println(...) ausgibt, am Beispiel {1,2,3}.
Permutationen hiervon sind:
(1,2,3), (1,3,2), (2,1,3), (2,3,1), (3,1,2), (3,2,1)
Mein Ansatz bisher:
Ich habe wie gefordert die Methode implementiert, um diese dann rekusiv zu gestalten habe ich mich für 3 for-Schleifen entschieden, die jeweils immer unterschiedliche Werte(durch if-Anweisung festgelegt) für das gewählte Zahlenspektrum ausgeben sollen.
1. Kann man das so überhaupt verwenden?
2. Ich wollte es durch ausführen/kompilieren in eclipse ausprobieren, bekam dann aber folgende Fehlermeldung:
[Problemzeile:" public void permute(1,2,3){"]
Exception in thread "main" java.lang.Error: Unresolved compilation problems:
void is an invalid type for the variable permute
Syntax error on token "(", = expected
Syntax error on token "(", { expected after this token
Syntax error, insert "}" to complete ArrayInitializer
Syntax error, insert ";" to complete LocalVariableDeclarationStatement
at Permutation.main(Permutation.java:6)
-->"void is an invalid type for the variable permute"
Diese Zeile macht mich stutzig, es wurde in der Aufgabe doch genau gefordert diese Methode zu verwenden, warum funktioniert das Konstrukt gerade dann an der Stelle nicht oder habe ich an anderer Stelle ein Fehler gemacht, der zu diesem Bericht führte?
Bin hier gerade etwas am verzweifeln, ich hoffe auf Hilfe.
Die nächste Aufgabe ist nochmal um einiges schwerer :/
Gruß
Ich hänge an folgendem Problem fest und komme nicht weiter.
Die Aufgabe war eine rekursive Methode public void permute(...) in eine Klasse Combinatorics zu implementieren, die für ein übergebenes int-Array alle Permutationen mit System.out.println(...) ausgibt, am Beispiel {1,2,3}.
Permutationen hiervon sind:
(1,2,3), (1,3,2), (2,1,3), (2,3,1), (3,1,2), (3,2,1)
Mein Ansatz bisher:
Code:
public class Combinatorics{
public static void main(String[] args) {
//übergebenes int-Array
int[] perm = new int[6];
public void permute(1,2,3){
for(i=1; i<4; i++){
perm[i]=i; //notwendig?
}
system.out.println("Permutation:"+getI());
for(j=1; j<4; j++){
perm[j]=j; //notwendig?
if(j!=i){
return j;
}
}
system.out.println("Permutation:"+getJ());
for(k=1; k<4; k++){
perm[k]=k; //notwendig?
if(k!=j & k!=i){
return k;
}
}
system.out.println("Permutation:"+getK());
}
}
}
1. Kann man das so überhaupt verwenden?
2. Ich wollte es durch ausführen/kompilieren in eclipse ausprobieren, bekam dann aber folgende Fehlermeldung:
[Problemzeile:" public void permute(1,2,3){"]
Exception in thread "main" java.lang.Error: Unresolved compilation problems:
void is an invalid type for the variable permute
Syntax error on token "(", = expected
Syntax error on token "(", { expected after this token
Syntax error, insert "}" to complete ArrayInitializer
Syntax error, insert ";" to complete LocalVariableDeclarationStatement
at Permutation.main(Permutation.java:6)
-->"void is an invalid type for the variable permute"
Diese Zeile macht mich stutzig, es wurde in der Aufgabe doch genau gefordert diese Methode zu verwenden, warum funktioniert das Konstrukt gerade dann an der Stelle nicht oder habe ich an anderer Stelle ein Fehler gemacht, der zu diesem Bericht führte?
Bin hier gerade etwas am verzweifeln, ich hoffe auf Hilfe.
Die nächste Aufgabe ist nochmal um einiges schwerer :/
Gruß