[논문 리뷰] Fast Preprocessing for Optimal Orthogonal Range Reporting and Range Successor with Applications to Text Indexing
이 논문은 2차원 직각 범위 보고, 범위 슈퍼세서, 정렬된 범위 보고에 대해 최적의 쿼리 시간—O(lg lg n + k) 또는 O(lg lg n)—을 달성하면서도 워드 램 모델 하에서 O(n√lg n) 시간 내에 구축이 가능한 최초의 데이터 구조를 제시한다. 이 방법은 웨이블릿 트리와 계층적 분해, 세 변면 및 직각 보고를 위한 특수 구조를 조합하여 기하학적 및 텍스트 색인 응용 분야에서 빠른 사전처리를 가능하게 한다.
Under the word RAM model, we design three data structures that can be constructed in $O(n\sqrt{\lg n})$ time over $n$ points in an $n imes n$ grid. The first data structure is an $O(n\lg^ε n)$-word structure supporting orthogonal range reporting in $O(\lg\lg n+k)$ time, where $k$ denotes output size and $ε$ is an arbitrarily small constant. The second is an $O(n\lg\lg n)$-word structure supporting orthogonal range successor in $O(\lg\lg n)$ time, while the third is an $O(n\lg^ε n)$-word structure supporting sorted range reporting in $O(\lg\lg n+k)$ time. The query times of these data structures are optimal when the space costs must be within $O(n\ polylog\ n)$ words. Their exact space bounds match those of the best known results achieving the same query times, and the $O(n\sqrt{\lg n})$ construction time beats the previous bounds on preprocessing. Previously, among 2d range search structures, only the orthogonal range counting structure of Chan and Pǎtraşcu (SODA 2010) and the linear space, $O(\lg^ε n)$ query time structure for orthogonal range successor by Belazzougui and Puglisi (SODA 2016) can be built in the same $O(n\sqrt{\lg n})$ time. Hence our work is the first that achieve the same preprocessing time for optimal orthogonal range reporting and range successor. We also apply our results to improve the construction time of text indexes.
연구 동기 및 목표
- 최적의 쿼리 시간을 갖는 2차원 직각 범위 보고, 범위 슈퍼세서, 정렬된 범위 보고를 위한 데이터 구조를 설계하기.
- 유사한 문제들에 대해 알려진 가장 빠른 사전처리 시간과 일치하는 O(n√lg n)의 구축 시간을 달성하기.
- 기하학적 데이터 구조에서 최적의 쿼리 성능과 빠른 사전처리 간 격차를 메우기.
- 결과를 활용해 텍스트 색인의 구축 시간을 향상시키기, 특히 압축 데이터 구조에서.
제안 방법
- 점 시퀀스에서 효율적인 랭크 및 세lec트 연산을 지원하기 위해 볼 인헤리턴스를 갖춘 2√lg n-차원 웨이블릿 트리를 구성한다.
- 웨이블릿 트리의 각 내부 노드에서 두 개의 보조 구조를 유지한다: 세 변면 정렬 보고를 위한 TSds(u)와 직각 정렬 보고를 위한 RSds(u).
- 웨이블릿 트리를 사용해 쿼리 범위를 세 부분—왼쪽, 중간, 오른쪽 서브트리—로 분할하여 분할 정복 기반 쿼리 처리를 가능하게 한다.
- 왼쪽과 오른쪽 서브트리를 TSds(u)를 사용해 하위 범위 내에서 y-정렬 순서로 점을 보고하고, 중간 부분은 RSds(u)를 사용해 전체 범위를 처리한다.
- 세 개의 정렬된 출력을 O(occ) 시간 내에 3방향 병합하여 통합한다. 여기서 occ는 보고된 점의 수이다.
- 웨이블릿 트리의 구조와 계층적 분해를 활용해 모든 노드에서의 총 사전처리 시간이 O(n√lg n)이 되도록 보장한다.
실험 결과
연구 질문
- RQ12차원 직각 범위 보고에 대해 O(lg lg n + k)의 최적 쿼리 시간을 달성하면서도 O(n√lg n)의 사전처리 시간을 확보할 수 있는가?
- RQ2O(lg lg n)의 쿼리 시간을 갖는 직각 범위 슈퍼세서를 O(n√lg n)의 사전처리 시간으로 지원할 수 있는가?
- RQ3O(lg lg n + k)의 쿼리 시간과 O(n√lg n)의 사전처리 시간을 갖는 정렬된 범위 보고를 위한 데이터 구조를 설계할 수 있는가?
- RQ4이러한 빠른 사전처리 구조를 텍스트 색인의 구축을 향상시키는 데 응용할 수 있는가?
주요 결과
- 논문은 O(n lgϵ n)-워드 데이터 구조를 제안하며, 이는 O(lg lg n + k)의 시간 내에 쿼리를 지원하고 O(n√lg n)의 시간 내에 구축할 수 있다.
- 직각 범위 슈퍼세서를 위한 O(n lg lg n)-워드 구조는 O(lg lg n)의 쿼리 시간과 O(n√lg n)의 사전처리 시간을 제공한다.
- 정렬된 범위 보고를 위한 O(n lg1+ϵ n)-워드 구조는 O(lg lg n + occ)의 쿼리 시간과 O(n√lg n)의 사전처리 시간을 지원한다.
- O(n√lg n)의 구축 시간은 이러한 문제들에서 최적 쿼리 시간을 달성하는 데 있어 가장 빠른 알려진 상한과 일치하는 최초의 사례이다.
- 공간 복잡도는 동일한 쿼리 시간을 갖는 데 있어 알려진 최고의 결과와 일치하여, 솔루션은 공간 최적화되어 있다.
- 결과는 특히 웨이블릿 트리 기반 압축 색인에서의 구축 시간 향상에 응용되었다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.