Shakersort
Version vom 11. April 2013, 22:59 Uhr von FTchalabi (Diskussion | Beiträge)
Shakersort oder auch Cocktailsort ist ein stabiler Sortieralgorithmus, der eine Reihe von Elementen sortiert.
Laufzeit
TODO
Einsatz von Slowsort in Java
Aufruf in der Main-Methode
Shakersort shaker = new Shakersort();
shaker.Shakersort.Slowsort(Datentyp);
System.out.print(Arrays.toString(Datentyp));
Sortieren von Zahlen
private void Shakersort(int[] zahl) {
int beginn = -1;
int ende = zahl.length-2;
while (beginn<ende) {
boolean vertauscht = false;
beginn++;
for (int i = beginn; i<= ende; i++) {
if (zahl[i] > zahl[i + 1]) {
int hilfs = zahl[i];
zahl[i] = zahl[i + 1];
zahl[i + 1] = hilfs;
vertauscht = true;
}
}
if (!vertauscht) {
break;
}
vertauscht = false;
ende--;
for (int i = beginn; i<= ende; i++) {
if (zahl[i] > zahl[i + 1]) {
int hilfs = zahl[i];
zahl[i] = zahl[i + 1];
zahl[i + 1] = hilfs;
vertauscht = true;
}
}
}
}
Sortieren von Strings
private void Shakersort(String[] text) {
int beginn = -1;
int ende = text.length - 2;
while (beginn < ende) {
boolean vertauscht = false;
beginn++;
for (int i = beginn; i <= ende; i++) {
if (text[i].compareTo(text[i + 1])>0) {
String hilfs = text[i];
text[i] = text[i + 1];
text[i + 1] = hilfs;
vertauscht = true;
}
}
if (!vertauscht) {
break;
}
vertauscht = false;
ende--;
for (int i = beginn; i <= ende; i++) {
if (text[i].compareTo(text[i + 1])>0) {
String hilfs = text[i];
text[i] = text[i + 1];
text[i + 1] = hilfs;
vertauscht = true;
}
}
}
}