Folgendes Implementierungsbeispiel in Java 1.6 zeigt, eine einfache
Implacement-Sortierung
mit der Strategie des BogoSort.
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class BogoSort {
// Sortiert eine Integerliste mit der Strategie des BogoSort.
public static void sort(List<Integer> values) {
while (!isSorted(values)) {
shuffle(values);
}
}
// Prüft, ob die Integerliste sortiert ist.
private static boolean isSorted(List<Integer> values) {
for (int i = 1; i < values.size(); i++) {
if (values.get(i - 1) > values.get(i)) {
return false;
}
}
return true;
}
// Mischt die Integerliste.
private static void shuffle(List<Integer> values) {
Collections.shuffle(values);
}
// Hauptprogramm zum Test.
public static void main(String[] arguments) {
List<Integer> values = new ArrayList<Integer>();
Collections.addAll(values, 3, 1, 2, 4, 2);
System.out.println("Unsortierte Liste: " + values);
BogoSort.sort(values); // Die Werte werden hier sortiert!
System.out.println("Sortierte Liste: " + values);
}
}
Beachten Sie, dass auch gleichwertige Integerwerte vorkommen können.
Im Folgenden sehen Sie den Konsolenoutput des Implementierungsbeispiels.
Unsortierte Liste: [3, 1, 2, 4, 2]
Sortierte Liste: [1, 2, 2, 3, 4]