Aufgabe 6
- Schreiben Sie eine Routine static void sort(double[]
a), die ein gegebenes Array von Zahlen a in
aufsteigender Reihenfolge sortiert. Testen Sie Ihre Routine mit einem Hauptprogramm,
das ein Array von Zufallszahlen erzeugt und die Zeit für das Sortieren misst.
- Wettbewerb:
- Wessen Routine sortiert am schnellsten? Gemessen wird,
wieviele Zahlen die jeweiligen Sort-Routinen auf meinem Rechner in meinem
Hauptprogramm in einer Minute sortieren können.
- Achtung: Die Sieger müssen ihr Verfahren erklären können!
- Hinweise:
- Überlegen Sie sich ein Verfahren zum Sortieren. Sie werden
vermutlich eine Routine
- gut gebrauchen können, die die Werte a[i]
und a[j] des Arrays vertauscht.
- Zufallszahlenzwischen 0 und 1 erhalten Sie mit
- Die aktuelle Zeit in Millisekunden seit dem 1.1.1970
liefert
- long System.currentTimeMillis()
- Zum Starten mit sehr großen Arrays reservierten Speicherplatz
(Heap) vergrößern mit
- Beispielhaft seien hier zwei verschiedene Lösungen gezeigt: