Affiliation:
1. Google Inc., Mountain View, CA
2. Carnegie Mellon University, Pittsburgh, PA
Abstract
We consider the problem of maintaining a dynamic dictionary
T
of keys and associated data for which both the keys and data are bit strings that can vary in length from zero up to the length
w
of a machine word. We present a data structure for this variable-bit-length dictionary problem that supports constant time lookup and expected amortized constant-time insertion and deletion. It uses
O
(
m
+ 3
n
−
n
log
2
n
) bits, where
n
is the number of elements in
T
, and
m
is the total number of bits across all strings in
T
(keys and data). Our dictionary uses an array
A
[1 …
n
] in which locations store variable-bit-length strings. We present a data structure for this variable-bit-length array problem that supports worst-case constant-time lookups and updates and uses
O
(
m
+
n
) bits, where
m
is the total number of bits across all strings stored in
A
.
The motivation for these structures is to support applications for which it is helpful to efficiently store short varying-length bit strings. We present several applications, including representations for semidynamic graphs, order queries on integers sets, cardinal trees with varying cardinality, and simplicial meshes of
d
dimensions. These results either generalize or simplify previous results.
Funder
Advanced Cyberinfrastructure
National Science Foundation
Publisher
Association for Computing Machinery (ACM)
Subject
Mathematics (miscellaneous)
Cited by
12 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Dynamic Dictionaries for Multisets and Counting Filters with Constant Time Operations;Algorithmica;2022-12-05
2. HyperLogLogLog;Proceedings of the 28th ACM SIGKDD Conference on Knowledge Discovery and Data Mining;2022-08-14
3. Fast and Simple Compact Hashing via Bucketing;Algorithmica;2022-06-29
4. Adaptive Succinctness;Algorithmica;2021-10-04
5. Information theoretic limits of cardinality estimation: Fisher meets Shannon;Proceedings of the 53rd Annual ACM SIGACT Symposium on Theory of Computing;2021-06-15