Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by nuclear,
12. Okt 2012
Weil ich zuerst falsch lag und die Zeit inklusive dem kopieren der Array gemessen hatte, was bei etlichen tausend elementen schon relativ lange dauert. Außerdem kann man lesen das ich inzwischen eine TObjectList verwende und somit diese Diskussion vollkommen unnötig ist. Die Geschwindigkeit der jetzt verwendeten Methode ist auch vollkommen ausreichend, da die Eingaben deutlich langsamer kommen. ...
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by nuclear,
12. Okt 2012
Das ist mir schon bewust nur ist InsertionSort bei vorsortierten Array auch ziemlich schnell (wenn ich ein weiteren Eintrag einsortiere, dann benötigt das bei 50.000 vorsortierten Elementen ca 1 ms). Der Algorythmus ist voll und ganz ausreichend. Außerdem prüft dieser Algorythmus ob das Sortieren nowendig ist weswegen ich denke das es schwer wird noch großartig schneller zu werden. Im übrigen...
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by nuclear,
12. Okt 2012
Jedes TSubObject hat die Möglichkeit weitere SubObjects zu besitzen welche in einer TObjectList verwaltet werden. Weietrhin enthält ein SubObject ein Array of String wo verschiedene Daten gespeichert werden, sowie eine THashedStringlist wo die Namen der jeweiligen SubObjecte drinne stehen um eine schnelle Suche zu ermöglichen, einen String für den Namen und einen Pointer auf das Parent. Alles in...
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by nuclear,
12. Okt 2012
Ok nur um das klarzustellen. Die Komponente besteht aus einer Unterkomponente, welche wiederrum ein array der Unterkomponente enthält, sodass ich theoretisch unendlich viele Ebenen haben kann. Da ich innerhalb einer sehr kurzen Zeit überprüfen muss ob ein Eintrag bereits existiert muss ich auch alle Dateien im Speicher halten. Ich habe bereits versucht die Daten zwischenzuspeichern. Dies benötigt...
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by nuclear,
12. Okt 2012
Danke, ich hatte aus irgend einem Graund nicht an eine TList gedacht. Ist denn quicksort bei einer vorsortierten liste schneller als ein InsertionSort? Ich nutze zum Sortieren selber auch Pointer. Wie ist denn die Geschwindigkeit bei einer TList bei einem erstellen eines neuen Elements im vergleich zu einem dynamischen array? MAcht das wirklich einen großen Unterschied?