Representing dynamic binary trees succinctly
SODA '01 Proceedings of the twelfth annual ACM-SIAM symposium on Discrete algorithms
An analysis of the Burrows—Wheeler transform
Journal of the ACM (JACM)
Succinct indexable dictionaries with applications to encoding k-ary trees and multisets
SODA '02 Proceedings of the thirteenth annual ACM-SIAM symposium on Discrete algorithms
Combinatorial Algorithms on Words
Combinatorial Algorithms on Words
Succinct Representation of Balanced Parentheses and Static Trees
SIAM Journal on Computing
Resizable Arrays in Optimal Time and Space
WADS '99 Proceedings of the 6th International Workshop on Algorithms and Data Structures
Succinct ordinal trees with level-ancestor queries
SODA '04 Proceedings of the fifteenth annual ACM-SIAM symposium on Discrete algorithms
Structuring labeled trees for optimal succinctness, and beyond
FOCS '05 Proceedings of the 46th Annual IEEE Symposium on Foundations of Computer Science
Representing Trees of Higher Degree
Algorithmica
Compressed representations of sequences and full-text indexes
ACM Transactions on Algorithms (TALG)
Compressed indexes for dynamic text collections
ACM Transactions on Algorithms (TALG)
Ultra-succinct representation of ordered trees
SODA '07 Proceedings of the eighteenth annual ACM-SIAM symposium on Discrete algorithms
Succinct indexes for strings, binary relations and multi-labeled trees
SODA '07 Proceedings of the eighteenth annual ACM-SIAM symposium on Discrete algorithms
Dynamic entropy-compressed sequences and full-text indexes
ACM Transactions on Algorithms (TALG)
Space-efficient static trees and graphs
SFCS '89 Proceedings of the 30th Annual Symposium on Foundations of Computer Science
Succinct dynamic dictionaries and trees
ICALP'03 Proceedings of the 30th international conference on Automata, languages and programming
Improved dynamic rank-select entropy-bound structures
LATIN'08 Proceedings of the 8th Latin American conference on Theoretical informatics
Space-efficient construction of LZ-index
ISAAC'05 Proceedings of the 16th international conference on Algorithms and Computation
A Lempel-Ziv text index on secondary storage
CPM'07 Proceedings of the 18th annual conference on Combinatorial Pattern Matching
Dynamic Succinct Ordered Trees
ICALP '09 Proceedings of the 36th International Colloquium on Automata, Languages and Programming: Part I
Fully-functional succinct trees
SODA '10 Proceedings of the twenty-first annual ACM-SIAM symposium on Discrete Algorithms
Space-efficient construction of Lempel-Ziv compressed text indexes
Information and Computation
ACM Transactions on Algorithms (TALG)
Succinct dynamic cardinal trees with constant time operations for small alphabet
TAMC'11 Proceedings of the 8th annual conference on Theory and applications of models of computation
Hi-index | 0.00 |
k-ary treesare a fundamental data structure in many text-processing algorithms (e.g., text searching). The traditional pointer-based representation of trees is space consuming, and hence only relatively small trees can be kept in main memory. Nowadays, however, many applications need to store a huge amount of information. In this paper we present a succinctrepresentation for dynamic k-ary trees of nnodes, requiring 2n+ nlogk+ o(nlogk) bits of space, which is close to the information-theoretic lower bound. Unlike alternative representations where the operations on the tree can be usually computed in O(logn) time, our data structure is able to take advantage of asymptotically smaller values of k, supporting the basic operations parentand childin O(logk+ loglogn) time, which is o(logn) time whenever logk= o(logn). Insertions and deletions of leaves in the tree are supported in $O((\log{k}+\log\log{n})(1+\frac{\log{k}}{\log{(\log{k} + \log\log{n})}}))$ amortized time. Our representation also supports more specialized operations (like subtreesize, depth, etc.), and provides a new trade-off when k= O(1) allowing faster updates (in O(loglogn) amortized time, versus the amortized time of O((loglogn)1 + 茂戮驴), for 茂戮驴 0, from Raman and Rao [21]), at the cost of slower basic operations (in O(loglogn) time, versus O(1) time of [21]).