T
tuxedo
Gast
Servus,
stecke mal wieder an ner Aufgabe fest.
Ich soll ein Programm schreiben das eine beliebig lange Datei X einließt und die Zeilen lexikografisch sortiert in eine Datei X.sort schreibt.
Das ganze soll möglichst effizient sein und darf keine einschlägigen Bibliotheksfunktionen verwenden...
Ein naiver Ansatz wäre alle Zeilen in ein eindimensionales String-Array packen und mit Quicksort in Kombination mit String.compareTo() sortieren lassen. Anschließend alles in X.sort schreiben.
'N Kumpel hats getestet... Dauert relativ lang. Zudem bricht mir das ganze bei Textdateien um 30MB ab...Zu wenig Speicher.
Mein zweites Bedenken bei diesr naiven Lösung: ist compareTo() eine einschlägige Bibliotheksfunkion, oder nicht ?
Das ganze muss sich doch auch Speicher- und Laufzeiteffizient lösen lassen...Aber ich komm nicht drauf. Hatte schon etliche einfälle. Habe diese aber alle wieder verworfen weil sich beim programmieren rausgestellt hat daß diese auch nicht praktikabel, gar nicht anwendbar sind.
Gruß
Alex
stecke mal wieder an ner Aufgabe fest.
Ich soll ein Programm schreiben das eine beliebig lange Datei X einließt und die Zeilen lexikografisch sortiert in eine Datei X.sort schreibt.
Das ganze soll möglichst effizient sein und darf keine einschlägigen Bibliotheksfunktionen verwenden...
Ein naiver Ansatz wäre alle Zeilen in ein eindimensionales String-Array packen und mit Quicksort in Kombination mit String.compareTo() sortieren lassen. Anschließend alles in X.sort schreiben.
'N Kumpel hats getestet... Dauert relativ lang. Zudem bricht mir das ganze bei Textdateien um 30MB ab...Zu wenig Speicher.
Mein zweites Bedenken bei diesr naiven Lösung: ist compareTo() eine einschlägige Bibliotheksfunkion, oder nicht ?
Das ganze muss sich doch auch Speicher- und Laufzeiteffizient lösen lassen...Aber ich komm nicht drauf. Hatte schon etliche einfälle. Habe diese aber alle wieder verworfen weil sich beim programmieren rausgestellt hat daß diese auch nicht praktikabel, gar nicht anwendbar sind.
Gruß
Alex