A New Succinct Representation of RMQ-Information and Improvements in the Enhanced Suffix Array

  • Johannes Fischer
  • Volker Heun
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4614)


The Range-Minimum-Query-Problem is to preprocess an array of length n in O(n) time such that all subsequent queries asking for the position of a minimal element between two specified indices can be obtained in constant time. This problem was first solved by Berkman and Vishkin [1], and Sadakane [2] gave the first succinct data structure that uses 4n + o(n) bits of additional space. In practice, this method has several drawbacks: it needs O(n logn) bits of intermediate space when constructing the data structure, and it builds on previous results on succinct data structures. We overcome these problems by giving the first algorithm that never uses more than 2n + o(n) bits, and does not rely on rank- and select-queries or other succinct data structures. We stress the importance of this result by simplifying and reducing the space consumption of the Enhanced Suffix Array [3], while retaining its capability of simulating top-down-traversals of the suffix tree, used, e.g., to locate all occ positions of a pattern p in a text in optimal O(|p| + occ) time (assuming constant alphabet size). We further prove a lower bound of 2n − o(n) bits, which makes our algorithm asymptotically optimal.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Berkman, O., Vishkin, U.: Recursive star-tree parallel data structure. SIAM J. Comput. 22(2), 221–242 (1993)zbMATHCrossRefMathSciNetGoogle Scholar
  2. 2.
    Sadakane, K.: Space-efficient data structures for flexible text retrieval systems. In: Bose, P., Morin, P. (eds.) ISAAC 2002. LNCS, vol. 2518, pp. 14–24. Springer, Heidelberg (2002)Google Scholar
  3. 3.
    Abouelhoda, M.I., Kurtz, S., Ohlebusch, E.: Replacing suffix trees with enhanced suffix arrays. J. Discrete Algorithms 2(1), 53–86 (2004)zbMATHCrossRefMathSciNetGoogle Scholar
  4. 4.
    Bender, M.A., Farach-Colton, M., Pemmasani, G., Skiena, S., Sumazin, P.: Lowest common ancestors in trees and directed acyclic graphs. J. Algorithms 57(2), 75–94 (2005)zbMATHCrossRefMathSciNetGoogle Scholar
  5. 5.
    Gabow, H.N., Bentley, J.L., Tarjan, R.E.: Scaling and related techniques for geometry problems. In: Proc. of the ACM Symp. on Theory of Computing, pp. 135–143. ACM Press, New York (1984)Google Scholar
  6. 6.
    Jacobson, G.: Space-efficient static trees and graphs. In: Proc. FOCS, pp. 549–554. IEEE Computer Society Press, Los Alamitos (1989)Google Scholar
  7. 7.
    Navarro, G., Mäkinen, V.: Compressed full-text indexes. ACM Computing Surveys (to appear, 2007), preliminary version available at
  8. 8.
    Sadakane, K.: Succinct representations of lcp information and improvements in the compressed suffix arrays. In: Proc. SODA, ACM/SIAM, pp. 225–237 (2002)Google Scholar
  9. 9.
    Sadakane, K.: Compressed suffix trees with full functionality. Theory of Computing Systems (to appear, 2007), preliminary version available at http://tcslab.csce.kyushu–
  10. 10.
    Alstrup, S., Gavoille, C., Kaplan, H., Rauhe, T.: Nearest common ancestors: A survey and a new distributed algorithm. In: Proc. SPAA, pp. 258–264. ACM Press, New York (2002)Google Scholar
  11. 11.
    Manber, U., Myers, E.W.: Suffix arrays: A new method for on-line string searches. SIAM J. Comput. 22(5), 935–948 (1993)zbMATHCrossRefMathSciNetGoogle Scholar
  12. 12.
    Muthukrishnan, S.: Efficient algorithms for document retrieval problems. In: Proc. SODA, ACM/SIAM, pp. 657–666 (2002)Google Scholar
  13. 13.
    Chen, K.-Y., Chao, K.-M.: On the range maximum-sum segment query problem. In: Fleischer, R., Trippen, G. (eds.) ISAAC 2004. LNCS, vol. 3341, pp. 294–305. Springer, Heidelberg (2004)Google Scholar
  14. 14.
    Tarjan, R.E., Vishkin, U.: An efficient parallel biconnectivity algorithm. SIAM J. Comput. 14(4), 862–874 (1985)zbMATHCrossRefMathSciNetGoogle Scholar
  15. 15.
    Fischer, J., Heun, V.: Theoretical and practical improvements on the RMQ-problem, with applications to LCA and LCE. In: Lewenstein, M., Valiente, G. (eds.) CPM 2006. LNCS, vol. 4009, pp. 36–48. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  16. 16.
    Yao, A.C.-C.: Should tables be sorted? J. ACM 28(3), 615–628 (1981)zbMATHCrossRefGoogle Scholar
  17. 17.
    Kasai, T., Lee, G., Arimura, H., Arikawa, S., Park, K.: Linear-time longest-common-prefix computation in suffix arrays and its applications. In: Amir, A., Landau, G.M. (eds.) CPM 2001. LNCS, vol. 2089, pp. 181–192. Springer, Heidelberg (2001)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Johannes Fischer
    • 1
  • Volker Heun
    • 1
  1. 1.Inst. für Informatik, Ludwig-Maximilians-Universität München, Amalienstr. 17, D-80333 München 

Personalised recommendations