Abstract
This article presents our divide-and-conquer optimal algorithms for lightweight suffix array construction for constant alphabets. These algorithms can efficiently compute the suffix array of a size-n text T with an alphabet Σ using O(nlogΣ) time and (ℓ(T) + |Σ|⌈logn ⌉ + O(1))-bit working space (excluding the space for the output suffix array), where Σ is an integer or constant alphabet, and ℓ(T) is the length of T measured in bits. For popular applications in practice with n ≤ 232 and |Σ| ≤ 256, these results translate into O(n) time and a total space of 5n + O(1) bytes, which are the optimal time and space complexities for lightweight suffix array construction.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Puglisi, S.J., Smyth, W.F., Turpin, A.: A taxonomy of suffix array construction algorithms. ACM Computing Surveys 2006 (to appear)
Manber, U., Myers, G.: Suffix arrays: A new method for on-line string searches. In: Proceedings of the first ACM-SIAM Symposium on Discrete Algorithms, pp. 319–327 (1990)
Manber, U., Myers, G.: Suffix arrays: A new method for on-line string searches. SIAM Journal on Computing 22(5), 935–948 (1993)
Burrows, M., Wheeler, D.J.: A block-sorting lossless data compression algorithm. Technical Report SRC Research Report 124, Digital Systems Research Center, California, USA (1994)
Manzini, G., Ferragina, P.: Engineering a lightweight suffix array construction algorithm. Algorithmica 40(1), 33–50 (2004)
Grossi, R., Vitter, J.S.: Compressed suffix arrays and suffix trees with applications to text indexing and string matching. In: STOC 2000. Proceedings of the 32nd Annual ACM Symposium on Theory of Computing, pp. 397–406 (2000)
Hon, W.K., Sadakane, K., Sung, W.K.: Breaking a time-and-space barrier for constructing full-text indices. In: Proceedings of FOCS 2003, pp. 251–260 (2003)
Lam, T.W., Sadakane, K., Sung, W.K., Yiu, S.M.: A space and time efficent algorithm for constructing compressed suffix arrays. In: Proceedings of International Conference on Computing and Combinatorics, pp. 401–410 (2002)
Kurtz, S.: Reducing the space requirement of suffix trees. Software Practice and Experience 29, 1149–1171 (1999)
Burkhardt, S., Kärkkäinen, J.: Fast lightweight suffix array construction and checking. In: Baeza-Yates, R.A., Chávez, E., Crochemore, M. (eds.) CPM 2003. LNCS, vol. 2676, pp. 55–69. Springer, Heidelberg (2003)
Manzini, G., Ferragina, P.: Engineering a lightweight suffix array construction algorithm. In: Möhring, R.H., Raman, R. (eds.) ESA 2002. LNCS, vol. 2461, pp. 698–710. Springer, Heidelberg (2002)
Na, J.C.: Linear-time construction of compressed suffix arrays using O(nlog n)-bit working space for large alphabets. In: Apostolico, A., Crochemore, M., Park, K. (eds.) CPM 2005. LNCS, vol. 3537, pp. 57–67. Springer, Heidelberg (2005)
Larsson, N.J., Sadakane, K.: Faster suffix sorting. Technical Report LU-CS-TR:99-214, LUNDFD6/(NFCS-3140)/1–20/(1999), Department of Computer Science, Lund University, Sweden (1999)
Maniscalco, M.A., Puglisi, S.J.: Faster lightweight suffix array construction. In: AWOCA 2006. Proceedings of 17th Australasian Workshop on Combinatorial Algorithms, pp. 16–29 (2006)
Kärkkäinen, J., Sanders, P., Burkhardt, S.: Linear work suffix array construction. Journal of the ACM 6, 918–936 (2006)
Ko, P., Aluru, S.: Space efficient linear time construction of suffix arrays. In: Baeza-Yates, R.A., Chávez, E., Crochemore, M. (eds.) CPM 2003. LNCS, vol. 2676, pp. 200–210. Springer, Heidelberg (2003)
Kim, D.K., Jo, J., Park, H.: A fast algorithm for constructing suffix arrays for fixed-size alphabets. In: Ribeiro, C.C., Martins, S.L. (eds.) WEA 2004. LNCS, vol. 3059, pp. 301–314. Springer, Heidelberg (2004)
Itoh, H., Tanaka, H.: An efficient method for in memory construction of suffix arrays. In: Proceedings of String Processing and Information Retrieval Symposium (1999)
Seward, J.: On the performance of BWT sorting algorithms. In: Proceedings DCC 2000 Data Compression Conference, Snowbird, UT, USA, pp. 173–82 (2000)
Schürmann, K.B., Stoye, J.: An incomplex algorithm for fast suffix array construction. In: ALENEX/ANALCO 2005. Proceedings of 7th Workshop on Algorithm Engineering and Experiments, pp. 77–85 (2005)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Nong, G., Zhang, S. (2007). Optimal Lightweight Construction of Suffix Arrays for Constant Alphabets. In: Dehne, F., Sack, JR., Zeh, N. (eds) Algorithms and Data Structures. WADS 2007. Lecture Notes in Computer Science, vol 4619. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-73951-7_53
Download citation
DOI: https://doi.org/10.1007/978-3-540-73951-7_53
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-73948-7
Online ISBN: 978-3-540-73951-7
eBook Packages: Computer ScienceComputer Science (R0)