Succinct orthogonal range search structures on a grid with applications to text indexing
We present a succinct representation of a set of n points on an n×n grid using bits to support orthogonal range counting in time, and range reporting in time, where k is the size of the output. This achieves an improvement on query time by a factor of upon the previous result of Mäkinen and Navarro , while using essentially the information-theoretic minimum space. Our data structure not only can be used as a key component in solutions to the general orthogonal range search problem to save storage cost, but also has applications in text indexing. In particular, we apply it to improve two previous space-efficient text indexes that support substring search  and position-restricted substring search . We also use it to extend previous results on succinct representations of sequences of small integers, and to design succinct data structures supporting certain types of orthogonal range query in the plane.
Bose, P, He, M. (Meng), Maheshwari, A, & Morin, P. (2009). Succinct orthogonal range search structures on a grid with applications to text indexing. doi:10.1007/978-3-642-03367-4_9