Fast string matching using an n-gram algorithm
Software—Practice & Experience
A fast string searching algorithm
Communications of the ACM
Efficient string matching: an aid to bibliographic search
Communications of the ACM
Average-optimal multiple approximate string matching
CPM'03 Proceedings of the 14th annual conference on Combinatorial pattern matching
Exact online two-dimensional pattern matching using multiple pattern matching algorithms
Journal of Experimental Algorithmics (JEA)
Hi-index | 0.00 |
The WM algorithm, designed by Sun Wu and Udi Manber, is considered the fastest multi-pattern string matching algorithm in practice except when the pattern number is very large or the alphabet size is small[2]. Theoretically, the scanning time of WM is average-optimal (i.e. O(nlogσ(rm)/m)), but in the worst case, its scanning time can not be evaluated at all. The maximum shift of the original WM algorithm is m-B+1, where m is the minimum length of all patterns and B is the q-gram size. The tuned WM algorithm (abbreviated as WM+) can reach higher performance by improving the shift table building algorithm and combining the AC algorithm with the original WM algorithm. And the scanning time of the WM+ algorithm in the worst case is predictable. Experiments show that the scanning time of the WM+ algorithm is less or not great than that of the WM algorithm for varied size of m and number of patterns, especially in the worst case.