Einzelnen Beitrag anzeigen

Benutzerbild von _frank_
_frank_

Registriert seit: 21. Feb 2003
Ort: Plauen / Bamberg
922 Beiträge
 
Delphi 3 Professional
 

Re: [TStringlist/string] Position => Zeile

  Alt 6. Feb 2009, 15:51
nahpets Lösung finde ich schon originell, ist aber um einiges langsamer als die Zählvariante (copy).
sereby's variante ist ähnlich meiner, da kommt mir aber gerade die idee, evtl pos(ex) mit einzuspannen...

so mal die messergebnisse (queryPerformanceCounter, gettickcount hat nicht gereicht):
frankw:34
sereby:34
sereby_pos:52
sereby_var:40
hawkeye:8352
nahpets:37050

wie man erkennt, sind sereby's und meine variante die schnellsten, danach serebys-variante mit var-parameter für s und danach die pos/posex-variante. irgendwann kommen dann die letzten beiden

für genauere messinfos hab ich mal das benchmark-programm angehängt.

Danke für die Antworten

//edit
hab das mal noch in µs/ms umgerechnet (mess-programm aktualisiert, gleich noch paar Fehler rausgemacht ):
frankw:7µs
sereby:7µs
sereby_pos:12µs
sereby_var:7µs
hawkeye:2,573ms
nahpets:11,478ms

da seh ich gerade, dass hawkeyes Version scheinbar falsch ist (249). die anderen Ergebnisse musste ich nur um 1 inkrementieren (position 5000 wäre zeile 109).

Gruß Frank
Angehängte Dateien
Dateityp: zip postoline_benchmark_161.zip (127,1 KB, 29x aufgerufen)
  Mit Zitat antworten Zitat