Ich habe versucht, dieses Problem seit etwa 2 Tagen jetzt zu vervollständigen, da es das Wochenende ist und ich kann keine Tutoren an meiner Schule kontaktieren. Ich habe eine Schleife erstellt, die den höchsten Wert in einem nicht leeren Array findet und dann den niedrigsten Index der höchsten Zahl in diesem Array mit dem letzten Wert im Array vertauscht.Array swapLargest nicht bestanden alle Tests, BASIC JAVA
Zum Beispiel
swapLargest ([1, 7, 5, 7, 4, 2]) → [1, 2, 5, 7, 4, 7]
aber läuft es kommt als
[1, 7, 5, 7, 2, 4]
hier ist mein Code
int[] swapLargest(int[] a) {
int max = Integer.MIN_VALUE;
for(int i = 1; i <a.length; i++){ // starting from 0
if(a[i] > max){
max = a[i];
max = i;
}
}
int temp = a[max];
a[max]=a[a.length-1];
a[a.length-1] = temp;
return a;
}
und schließlich eine Verbindung zum Problem: http://codingbat.com/prob/p227094 Wenn Sie Ihre Ergebnisse mit mir testen möchten. Bisher würde dies 4/11 Tests bestehen.
Ich bin wirklich neu in der Programmierung, alle Tipps wären willkommen.
Danke!
'max = a [i]; max = i' Sie ordnen die gleiche Variable zweimal zu - das Ergebnis der ersten Zuweisung wird von der zweiten überschrieben. Vielleicht müssen Sie zwei verschiedenen Variablen zuweisen. – khelwood