Abstract
A Range Minimum Query asks for the position of a minimal element between two specified array-indices. We consider a natural extension of this, where our further constraint is that if the minimum in a query interval is not unique, then the query should return an approximation of the median position among all positions that attain this minimum. We present a succinct preprocessing scheme using Dn + o(n) bits in addition to the static input array (small constant D), such that subsequent “range median of minima queries” can be answered in constant time. This data structure can be built in linear time, with little extra space needed at construction time. We introduce several new combinatorial concepts such as Super-Cartesian Trees and Super-Ballot Numbers. We give applications of our preprocessing scheme in text indexes such as (compressed) suffix arrays and trees.
Similar content being viewed by others
References
Abouelhoda M.I., Kurtz S., Ohlebusch E.: Replacing suffix trees with enhanced suffix arrays. J. Discret. Algorithms 2(1), 53–86 (2004)
Alstrup, S., Gavoille, C., Kaplan, H., Rauhe, T.: Nearest common ancestors: a survey and a new distributed algorithm. In: Proceedings of SPAA, pp. 258–264. ACM Press (2002)
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)
Berkman O., Vishkin U.: Recursive star-tree parallel data structure. SIAM J. Comput. 22(2), 221–242 (1993)
Clark, D.R.: Compact pat trees. PhD thesis, University of Waterloo, Canada (1996)
Ferragina, P., Fischer, J.: Suffix arrays on words. In: Proceedings of CPM, LNCS, vol. 4580, pp. 328–339. Springer, Berlin (2007)
Ferragina P., Manzini G., Mäkinen V., Navarro G.: Compressed representations of sequences and full-text indexes. ACM Trans. Algorithms 3(2), Article No. 20 (2007)
Fischer, J., Heun, V.: Theoretical and practical improvements on the RMQ-problem, with applications to LCA and LCE. In: Proceedings of CPM, LNCS, vol. 4009, pp. 36–48. Springer, Berlin (2006)
Fischer, J., Heun, V.: A new succinct representation of RMQ-information and improvements in the enhanced suffix array. In: Proceedings of ESCAPE, LNCS, vol. 4614, pp. 459–470. Springer, Berlin (2007)
Fischer, J., Mäkinen, V., Navarro, G.: An(other) entropy-bounded compressed suffix tree. In: Proceedings of CPM, LNCS, vol. 5029, pp. 152–165. Springer, Berlin (2008)
Gabow, H.N., Bentley, J.L., Tarjan, R.E.: Scaling and related techniques for geometry problems. In: Proceedings of STOC, pp. 135–143. ACM Press (1984)
Gessel I.M.: Super ballot numbers. J. Symb. Comput. 14(2–3), 179–194 (1992)
Grossi R., Vitter J.S.: Compressed suffix arrays and suffix trees with applications to text indexing and string matching. SIAM J. Comput. 35(2), 378–407 (2005)
Jacobson, G.: Space-efficient static trees and graphs. In: Proceedings of FOCS, pp. 549–554. IEEE Computer Society (1989)
Kim, D.K., Jeon, J.E., Park, H.: An efficient index data structure with the capabilities of suffix trees and suffix arrays for alphabets of non-negligible size. In: Proceedings of SPIRE, LNCS, vol. 3246, pp. 138–149. Springer, Berlin (2004)
Kim, D.K., Park, H.: A new compressed suffix tree supporting fast search and its construction algorithm using optimal working space. In: Proceedings of CPM, LNCS, vol. 3537, pp. 33–44. Springer, Berlin (2004)
Kim D.K., Sim J.S., Park H., Park K.: Constructing suffix arrays in linear time. J. Discret. Algorithms 3(2–4), 126–142 (2005)
Manzini G.: An analysis of the Burrows-Wheeler transform. J. ACM 48(3), 407–430 (2001)
Merlini D., Sprugnoli R., Verri M.C.: Waiting patterns for a printer. Discret. Appl. Math. 144(3), 359–373 (2004)
Munro, J.I.: Tables. In: Proceedings of FSTTCS, LNCS, vol. 1180, pp. 37–42. Springer, Berlin (1996)
Navarro, G., Mäkinen, V.: Compressed full-text indexes. ACM Comput. Surv. 39(1), Article No. 2 (2007)
Ohlebusch, E., Gog, S.: A compressed enhanced suffix array supporting fast string matching. In: Proceedings of SPIRE, LNCS, vol. 5721, pp. 51–62. Springer, Berlin (2009)
Raman, R., Raman, V., and Rao, S.S.: Succinct indexable dictionaries with applications to encoding k-ary trees and multisets. ACM Trans. Algorithms 3(4), Article No. 43 (2007)
Sadakane K.: Compressed suffix trees with full functionality. Theory Comput. Syst. 41(4), 589–607 (2007)
Sadakane K.: Succinct data structures for flexible text retrieval systems. J. Discret. Algorithms 5(1), 12–22 (2007)
Sadakane, K., Navarro, G.: Fully-functional static and dynamic succinct trees. CoRR, abs/0905.0768v1, 2009
Stanley R.P.: Enumerative Combinatorics, vol. 2. Cambridge University Press, Cambridge (1999)
Välimäki, N., Gerlach, W., Dixit, K., Mäkinen, V.: Engineering a compressed suffix tree implementation. In: Proceedings of the 6th workshop on experimental algorithms (WEA 2007), LNCS, vol. 4525, pp. 217–228. Springer, Berlin (2007)
Vuillemin J.: A unifying look at data structures. Commun. ACM 23(4), 229–239 (1980)
Author information
Authors and Affiliations
Corresponding author
Additional information
Work on this article was partially funded by the German Research Foundation (DFG, Bioinformatics Initiative).
Rights and permissions
About this article
Cite this article
Fischer, J., Heun, V. Finding Range Minima in the Middle: Approximations and Applications. Math.Comput.Sci. 3, 17–30 (2010). https://doi.org/10.1007/s11786-009-0007-8
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11786-009-0007-8
Keywords
- Range minimum query
- Succinct data structure
- Cartesian Tree
- Ballot number
- Text indexing
- Suffix tree
- Suffix array