Bug 10392 – Implement std.algortihm.find with sub-range in O(N) time

Status
RESOLVED
Resolution
FIXED
Severity
enhancement
Priority
P2
Component
phobos
Product
D
Version
D2
Platform
All
OS
All
Creation time
2013-06-17T10:10:51Z
Last change time
2020-03-21T03:56:38Z
Assigned to
No Owner
Creator
Dmitry Olshansky

Comments

Comment #0 by dmitry.olsh — 2013-06-17T10:10:51Z
Per Adnrei's request I'm filing this in case somebody has the time to do it. It have long bugged me that Phobos std.algorithm.find is slow. Far slower then strstr (esp on *nix where it competes against GLIBC[1]). The current state of the art in searching substring with O(1) space requirement is Two-Way algorithm: http://www-igm.univ-mlv.fr/~lecroq/string/node26.html which is linear in time. I could imagine it would be interesting to implement a generic version as well. [1] See a relevant bug report and discussion e.g on glibc http://sourceware.org/bugzilla/show_bug.cgi?id=5514
Comment #1 by b2.temp — 2017-09-18T00:02:27Z