Einzelnen Beitrag anzeigen

Thanatos81
(Gast)

n/a Beiträge
 
#4

Re: Prozedur zu langsam, Optimierung nötig

  Alt 8. Mär 2007, 21:52
Wenn ich das richtig sehe, werden f und g die selbe Datei zugewiesen, dann durchläufst du f von Anfang bis Ende und in jedem Durchlauf(f) durchläufst du g komplett.

Bei jedem Durchlauf(f) wird g erneut geöffnet. Und jedes readLn liest von der Platte. Das kostet natürlich unheimlich Zeit.

Ich würde statt dessen folgender Herangehensweise versuchen.
  • Datei öffnen
  • Daten in ein passendes Record schreiben
  • Record per Hier im Forum suchenQuicksort nach Koordinaten sortieren
  • Eine Variable "letzteKoords" und ein Array "besterWert/Koord" einführen
  • Record durchlaufen und prüfen ob letzteKoords = aktuelle Koords, falls ja, schauen ob aktueller Wert besser, dann im Array speichern
  • Zum Schluss alles in eine neue Datei speichern.

GetPosNumX wäre aber wirklich hilfreich.
  Mit Zitat antworten Zitat