Conceitos Básicos
Zip 트리의 편향을 극복하고 균형을 개선하기 위해 간단한 변형인 zip-zip 트리를 정의하고 분석한다. 또한 가중치 키를 지원하는 편향 zip-zip 트리와 O(1) 메타데이터를 사용하는 just-in-time zip-zip 트리를 소개한다.
Resumo
이 논문에서는 zip 트리의 편향을 극복하고 균형을 개선하기 위해 zip-zip 트리라는 간단한 변형을 정의하고 분석한다.
zip-zip 트리는 각 키에 대해 (r1, r2) 형태의 랭크 쌍을 사용한다. r1은 기존 zip 트리와 같이 기하 분포에서 추출되고, r2는 [1, logc n] 범위의 균일 분포에서 추출된다. 이를 통해 zip-zip 트리는 기존 zip 트리에 비해 더 균형잡힌 구조를 가지게 된다.
이론적으로 zip-zip 트리의 노드 깊이 기대값은 1.3863 log n - 1 + o(1)로, 균일 삽입 순서의 이진 탐색 트리나 treap과 동일한 수준이다. 하지만 zip-zip 트리는 노드당 O(log log n) 비트의 메타데이터만 사용하면 되는 반면, 이들은 노드당 Θ(log n) 비트가 필요하다.
또한 편향 zip-zip 트리를 정의하여 가중치 키를 지원할 수 있게 하였다. 편향 zip-zip 트리에서 키 k의 기대 깊이는 O(log(W/wk))로, W는 전체 키 가중치 합이다.
just-in-time zip-zip 트리는 O(1) 비트의 메타데이터만 사용하지만 역사 독립성은 없다.
전반적으로 zip-zip 트리는 기존 zip 트리에 비해 균형이 개선되고, 메타데이터 사용량도 크게 줄어들며, 편향 및 부분 지속성 등의 추가 기능을 제공한다.
Estatísticas
노드 수 n일 때 zip-zip 트리의 기대 노드 깊이는 최대 1.3863 log n - 1 + o(1)이다.
가장 작은 키와 가장 큰 키의 기대 깊이는 모두 0.6932 log n + γ + o(1)이다.
Citações
"zip-zip 트리는 기존 zip 트리에 비해 더 균형잡힌 구조를 가지게 된다."
"zip-zip 트리는 노드당 O(log log n) 비트의 메타데이터만 사용하면 되는 반면, 균일 삽입 순서의 이진 탐색 트리나 treap은 노드당 Θ(log n) 비트가 필요하다."
"편향 zip-zip 트리에서 키 k의 기대 깊이는 O(log(W/wk))로, W는 전체 키 가중치 합이다."