public int[] selectionSort(int array[]) {
for(int i = array.length - 1; i >= 0; i--) {
int highestIndex = i;
for(int j = i; j >= 0; j--) {
if(array[j] > array[highestIndex])
highestIndex = j;
}
int temp = array[i];
array[i] = array[highestIndex];
array[highestIndex] = temp;
}
return array;
}
Ich verstehe das Konzept der Auswahl sortieren, aber der Code verwirrt mich. Kann jemand genauer erklären, was in den letzten drei Anweisungen der äußeren for-Schleife geschieht, die mit "int temp = array [i]" beginnt?Brauchen Sie Hilfe Verständnis Segment des Codes
http://stackoverflow.com/questions/13766209/effective-swapping-of-elements-of-an-array-in-java –
Sie wechseln die Orte von 'Array [i]' und 'Array [hostIndex] '. Dazu erstellen Sie eine Kopie von 'array [i]', so dass Sie auf den Wert zugreifen können, nachdem dieser von 'array [i] = array [highestIndex];' überschrieben wurde. – Gendarme