Succinct Dynamic Cardinal Trees with Constant Time Operations for Small Alphabet Pooya Davoodi Aarhus University May 24, 2011 S. Srinivasa Rao Seoul National University
Outline 2
Succinct Data Structures Goal: – Represent data in close to optimal space (optimal: information-theoretic lower bound) – Support operations efficiently Example: succinct representation of trees 3 Compress but also preserve accessibility and functionality
Motivation for Succinct Trees Directories (Unix, all the rest) Search trees (B-trees, binary search trees, digital trees, or tries) Graph structures (doing a tree based search) Search indexes for text (including DNA) – Suffix trees XML documents … 4
Memory Model
Ordinal Trees 6 x a b c
Ordinal Tree Representations 7
8
9
Previous Results 10
Dynamic Cardinal Trees Data structures support the update operations: – Inserting a leaf – Deleting a leaf 11 “Data optimization is much easier when we can sit back and do it off-line.” Jocobson, 1989
Hardness of Arbitrary Updates 12
Traversal Model A traversal starts and ends at the root Queries and updates are performed at the current node of the traversal 13
Previous Results 14 amortized
Our Result 15
Data Structure 16
Main Contribution 17
Open Problems 18
Thank You