{"title":"Range Selection Queries in Data Aware Space and Time","authors":"M. O. Külekci, Sharma V. Thankachan","doi":"10.1109/DCC.2015.53","DOIUrl":null,"url":null,"abstract":"On a given vector X = (x<sub>1</sub>, x<sub>2</sub>,..., x<sub>n</sub>) of integers, the range selection (i, j, k) query is finding the k-th smallest integer in (x<sub>i</sub>, x<sub>i+1</sub>,..., x<sub>j</sub>) for any (i, j, k) such that 1 ≤ i ≤ j ≤ n, and 1 ≤ k ≤ j - i + 1. Previous studies on the problem kept X intact and proposed data structures that occupied additional O(n · log n) bits of space over the X itself that answer the queries in logarithmic time. In this study, we replace X and encode all integers in it via a single wavelet tree by using S = n · log u + Σ<sub>∀i</sub> log x<sub>i</sub> + o(n · log u + Σ<sub>∀i</sub> log x<sub>i</sub>) bits, where u is the number of distinct ⌊log x<sub>i</sub>⌋ values observed in X. Notice that u is at most 32 (64) for 32-bit (64-bit) integers and when x<sub>i</sub> > u, the space used for x<sub>i</sub> in the proposed data structure is less then the Elias-δ coding of x<sub>i</sub>. Besides data-aware coding of X, the range selection is performed in O(log u + log x') time where x' is the k-th smallest integer in the queried range. This somewhat adaptive result interestingly achieves the range selection regardless of the size of X, and totally depends on the actual answer of the query. In summary, to the best of our knowledge, we present the first algorithm using data-aware space and time for the general range selection problem.","PeriodicalId":313156,"journal":{"name":"2015 Data Compression Conference","volume":"103 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2015-04-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"3","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2015 Data Compression Conference","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/DCC.2015.53","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 3
Abstract
On a given vector X = (x1, x2,..., xn) of integers, the range selection (i, j, k) query is finding the k-th smallest integer in (xi, xi+1,..., xj) for any (i, j, k) such that 1 ≤ i ≤ j ≤ n, and 1 ≤ k ≤ j - i + 1. Previous studies on the problem kept X intact and proposed data structures that occupied additional O(n · log n) bits of space over the X itself that answer the queries in logarithmic time. In this study, we replace X and encode all integers in it via a single wavelet tree by using S = n · log u + Σ∀i log xi + o(n · log u + Σ∀i log xi) bits, where u is the number of distinct ⌊log xi⌋ values observed in X. Notice that u is at most 32 (64) for 32-bit (64-bit) integers and when xi > u, the space used for xi in the proposed data structure is less then the Elias-δ coding of xi. Besides data-aware coding of X, the range selection is performed in O(log u + log x') time where x' is the k-th smallest integer in the queried range. This somewhat adaptive result interestingly achieves the range selection regardless of the size of X, and totally depends on the actual answer of the query. In summary, to the best of our knowledge, we present the first algorithm using data-aware space and time for the general range selection problem.