title: Encoding range minima and range top-2 queries.
abstract: We consider the problem of encoding range minimum queries (RMQs): given an array A[1..n] of distinct totally ordered values, to pre-process A and create a data structure that can answer the query RMQ(i,j), which returns the index containing the smallest element in A[i..j], without access to the array A at query time. We give a data structure whose space usage is 2n+o(n) bits, which is asymptotically optimal for worst-case data, and answers RMQs in O(1) worst-case time. This matches the previous result of Fischer and Heun, but is obtained in a more natural way. Furthermore, our result can encode the RMQs of a random array A in 1.919n+o(n) bits in expectation, which is not known to hold for Fischer and Heun's result. We then generalize our result to the encoding range top-2 query (RT2Q) problem, which is like the encoding RMQ problem except that the query RT2Q(i,j) returns the indices of both the smallest and second smallest elements of A[i..j]. We introduce a data structure using 3.272n+o(n) bits that answers RT2Qs in constant time, and also give lower bounds on the effective entropy of the RT2Q problem.
authors.affiliation: Computer Science and Engineering, New York University Polytechnic School of Engineering, , Brooklyn, NY 11201, USA.
authors.forename: Pooya
authors.initials: P
authors.lastname: Davoodi
authors.forename: Gonzalo
authors.initials: G
authors.lastname: Navarro
authors.forename: Rajeev
authors.initials: R
authors.lastname: Raman
authors.forename: S Srinivasa
authors.initials: SS
authors.lastname: Rao
keywords: Cartesian tree; range minimum query; representations of ordinal tree; succinct data structure; transformation