Einzelnen Beitrag anzeigen

Ginko

Registriert seit: 30. Aug 2008
208 Beiträge
 
FreePascal / Lazarus
 
#43

AW: Boyer Moore Algorithmus

  Alt 9. Jun 2013, 11:49
Moin,
Bei mir sieht das ganz anders aus ?! Ich hab mal noch hier den dazu genommen http://www.delphipraxis.net/711182-post1.html, der schlägt sich bei mir bis jetzt am besten (Alles im Anhang).
Code:
"Taxi"
BMH Count:       100000 in 503ms
SP Search Count: 100000 in 785ms
Asm AmatProf:    100000 in 743ms
QSSearch Count:  100000 in 396ms <---
Asm himitsu:     100000 in 1463ms
Std PosEx Count: 100000 in 1559ms

" Taxi" // Ein häufiger Buchstabe vorne
BMH Count:       100000 in 423ms <--
SP Search Count: 100000 in 752ms
Asm AmatProf:    100000 in 1185ms
QSSearch Count:  100000 in 423ms <--
Asm himitsu:     100000 in 3854ms
Std PosEx Count: 100000 in 3643ms

"XTaxi" // Ein nicht vorhandener Buchstabe vorne
BMH Count:       0 in 409ms
SP Search Count: 0 in 666ms
Asm AmatProf:    0 in 405ms
QSSearch Count:  0 in 305ms <--
Asm himitsu:     0 in 1177ms
Std PosEx Count: 0 in 1178ms

// Die fast längste Zeile #13#10 fehlt
"Franz jagt im komplett verwahrlosten Taxi quer durch Bayern."
BMH Count:       100000 in 1191ms
SP Search Count: 100000 in 1343ms
Asm AmatProf:    100000 in 592ms <--
QSSearch Count:  100000 in 601ms
Asm himitsu:     100000 in 2353ms
Std PosEx Count: 100000 in 2031ms

//Ein nicht vorhandener Buchstabe am Ende eines langen Textes
"Franz jagt im komplett verwahrlosten Taxi quer durch Bayern.X"
BMH Count:       0 in 103ms
SP Search Count: 0 in 413ms
Asm AmatProf:    0 in 1276ms
QSSearch Count:  0 in 79ms <--
Asm himitsu:     0 in 2455ms
Std PosEx Count: 0 in 2050ms

//Nur ein Buchstabe
"t"
BMH Count:       400000 in 1989ms
SP Search Count: 400000 in 1987ms
Asm AmatProf:    400000 in 841ms <--
QSSearch Count:  400000 in 1289ms
Asm himitsu:     400000 in 2137ms
Std PosEx Count: 400000 in 2677ms

"Franz jagt im komplett"
BMH Count:       100000 in 667ms
SP Search Count: 100000 in 757ms
Asm AmatProf:    100000 in 739ms
QSSearch Count:  100000 in 339ms <--
Asm himitsu:     100000 in 1753ms
Std PosEx Count: 100000 in 1831ms
50 Durchläufe/Test. Datei 100000 Zeilen.
Angehängte Dateien
Dateityp: zip Count_String_Test.zip (10,7 KB, 32x aufgerufen)

Geändert von Ginko ( 9. Jun 2013 um 15:14 Uhr)
  Mit Zitat antworten Zitat