Abstract
We present three bit-parallel algorithms for exact searching of long patterns. Two algorithms are modifications of the BNDM algorithm and the third one is a filtration method which utilizes locations of q-grams in the pattern. Two algorithms apply a condensed representation of q-grams. Practical experiments show that the new algorithms are competitive with earlier algorithms with or without bit-parallelism. The average time complexity of the algorithms is analyzed. Two of the algorithms are shown to be optimal on average.
Supported by Academy of Finland grants 118653 ALGODAN and 134287 IASMP.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Crochemore, M., Rytter, W.: Jewels of Stringology. World Scientific Publishing Company, Singapore (2002)
Ďurian, B., Holub, J., Peltola, H., Tarhio, J.: Tuning BNDM with q-Grams. In: Proc. ALENEX 2009, the Tenth Workshop on Algorithm Engineering and Experiments, pp. 29–37 (2009)
Faro, S., Lecroq, T.: Efficient variants of the backward-oracle-matching algorithm. In: Proc. PSC 2008, The 13th Prague Stringology Conference, pp. 146–160 (2008)
Fredriksson, K., Navarro, G.: Average-optimal single and multiple approximate string matching. ACM Journal of Experimental Algorithmics 9(1.4), 1–47 (2004)
He, L., Fang, B., Sui, J.: The wide window string matching algorithm. Theoretical Computer Science 332(1-3), 391–404 (2005)
Horspool, R.N.: Practical fast searching in strings. Software – Practice and Experience 10(6), 501–506 (1980)
Hume, A., Sunday, D.M.: Fast string searching. Software – Practice and Experience 21(11), 1221–1248 (1991)
Külekci, M.O.: A method to overcome computer word size limitation in bit-parallel pattern matching. In: Hong, S.-H., Nagamochi, H., Fukunaga, T. (eds.) ISAAC 2008. LNCS, vol. 5369, pp. 496–506. Springer, Heidelberg (2008)
Külekci, M.O.: Filter based fast matching of long patterns by using SIMD instructions. In: Proc. of the Prague Stringology Conference 2009, pp. 118–128 (2009)
Lecroq, T.: Fast exact string matching algorithms. Information Processing Letters 102(6), 229–235 (2007)
Navarro, G., Raffinot, M.: Fast and flexible string matching by combining bit-parallelism and suffix automata. ACM Journal of Experimental Algorithmics 5(4), 1–36 (2000)
Navarro, G., Raffinot, M.: Flexible Pattern Matching in Strings: Practical On-Line Search Algorithms for Texts and Biological Sequences. Cambridge University Press, New York (2002)
Peltola, H., Tarhio, J.: Alternative algorithms for bit-parallel string matching. In: Nascimento, M.A., de Moura, E.S., Oliveira, A.L. (eds.) SPIRE 2003. LNCS, vol. 2857, pp. 80–93. Springer, Heidelberg (2003)
Tarhio, J., Peltola, H.: String matching in the DNA alphabet. Software – Practice and Experience 27(7), 851–861 (1997)
Wu, S., Manber, U.: Agrep – a fast approximate pattern searching tool. In: Proceedings of the Winter USENIX Technical Conference, pp. 153–162 (1992)
Yao, A.C.-C.: The complexity of pattern matching for a random string. SIAM Journal on Computing 8(3), 368–387 (1979)
Zhang, G., Zhu, E., Mao, L., Yin, M.: A bit-parallel exact string matching algorithm for small alphabet. In: Deng, X., Hopcroft, J.E., Xue, J. (eds.) FAW 2009. LNCS, vol. 5598, pp. 336–345. Springer, Heidelberg (2009)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Ďurian, B., Peltola, H., Salmela, L., Tarhio, J. (2010). Bit-Parallel Search Algorithms for Long Patterns. In: Festa, P. (eds) Experimental Algorithms. SEA 2010. Lecture Notes in Computer Science, vol 6049. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-13193-6_12
Download citation
DOI: https://doi.org/10.1007/978-3-642-13193-6_12
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-13192-9
Online ISBN: 978-3-642-13193-6
eBook Packages: Computer ScienceComputer Science (R0)