Hey Leute,
Ich will die Selection Sort suche schneller machen, das heißt die Variante soll das Minimum und Maximum gleichzeitig bestimmen und dann mit dem Element ,dass am weitesten links bzw am weitesten rechts steht,vertauscht werden. D.h. die Restfolge wird von beiden Seiten her kleiner.
Bisher habe ich nur eine Variante , die nur das Maximum sucht und mit dem am weitesten rechts vertauscht wird.
Mein bisheriger Code:
Wie könnte ich das am besten umschreiben? Ich bin noch Neuling und habe es schon selbst versucht aber leider ohne Erfolg. Bei Google habe ich auch nichts passendes gefunden. Irgendwelche Ideen, Tipps oder sogar eine Lösung?
Danke schonmal im Vorraus
mfg
updater
Ich will die Selection Sort suche schneller machen, das heißt die Variante soll das Minimum und Maximum gleichzeitig bestimmen und dann mit dem Element ,dass am weitesten links bzw am weitesten rechts steht,vertauscht werden. D.h. die Restfolge wird von beiden Seiten her kleiner.
Bisher habe ich nur eine Variante , die nur das Maximum sucht und mit dem am weitesten rechts vertauscht wird.
Mein bisheriger Code:
Java:
public class Sort {
static void swap (int [] array, int index1, int index2)
{
int tmp = array[index1];
array[index1] = array[index2];
array[index2] = tmp;
}
static void SelectionSort (int [] array) {
int mark = array.length - 1;
while (mark > 0) {
int max = 0;
for (int i = 1; i <= mark; i++)
if (array [i] > array [max])
max = i;
swap (array, mark, max);
mark--;
}
}
public static void main(String[] args) {
int [] F = new int[20];
for (int i = 0; i<F.length; i++)
{
int key= (int) Math.floor(Math.random()*F.length);
F[i] = key;}
SelectionSort(F);
int a=0;
while (a<F.length){
print(F[a] + ", ");
a++;
}
}
}
Wie könnte ich das am besten umschreiben? Ich bin noch Neuling und habe es schon selbst versucht aber leider ohne Erfolg. Bei Google habe ich auch nichts passendes gefunden. Irgendwelche Ideen, Tipps oder sogar eine Lösung?
Danke schonmal im Vorraus
mfg
updater
Zuletzt bearbeitet: