Also ich arbeite gerade an einem Programm das alle Files der Festplatte auslesen soll und dann nach Größe oder alter sortieren soll (brauche ca die 100 größten oder ältesten Datein)
Ich durchlaufe ab einem Start Pfad alle Ordner und unterordner und speicher die File Objekte in einem Vector.
Danach sortier ich diesen Vector mit einem Comperator einmal nach Größe das andere mal nach Alter.
Problem ist das diese vergleiche bereits beim testen mit ein paar hundert Datein recht lange dauert.
Wenn man also alle Daten der Festplatte nehmen würde wäre es viel zu lange.
Wäre es schneller den Vector auf 100 Einträge zu beschrenken und den jeweiligen neuen Wert einzusortieren.
Hab das mal versucht indem ich die ersten 100 Werte so einfüge, dann einmal sortiere und den jeweils neuen Wert mit dem letzten vergleiche und wenn der größer ist den letzten ersetze und neu sortieren lasse.
Das müßte ich ja dann 2 mal machen einmal für Größe und einmal für Alter.
oder gibt es andere Möglichkeiten das ganze performanter zu gestalten.
Ich durchlaufe ab einem Start Pfad alle Ordner und unterordner und speicher die File Objekte in einem Vector.
Danach sortier ich diesen Vector mit einem Comperator einmal nach Größe das andere mal nach Alter.
Problem ist das diese vergleiche bereits beim testen mit ein paar hundert Datein recht lange dauert.
Wenn man also alle Daten der Festplatte nehmen würde wäre es viel zu lange.
Wäre es schneller den Vector auf 100 Einträge zu beschrenken und den jeweiligen neuen Wert einzusortieren.
Hab das mal versucht indem ich die ersten 100 Werte so einfüge, dann einmal sortiere und den jeweils neuen Wert mit dem letzten vergleiche und wenn der größer ist den letzten ersetze und neu sortieren lasse.
Das müßte ich ja dann 2 mal machen einmal für Größe und einmal für Alter.
oder gibt es andere Möglichkeiten das ganze performanter zu gestalten.