Results 1 
5 of
5
LOW REDUNDANCY IN STATIC DICTIONARIES WITH CONSTANT QUERY TIME
 SIAM J. COMPUT.
, 2001
"... A static dictionary is a data structure storing subsets of a finite universe U, answering membership queries. We show that on a unit cost RAM with word size Θ(log U), a static dictionary for nelement sets with constant worst case query time can be obtained using B +O(log log U)+o(n) (U) bits ..."
Abstract

Cited by 53 (8 self)
 Add to MetaCart
A static dictionary is a data structure storing subsets of a finite universe U, answering membership queries. We show that on a unit cost RAM with word size Θ(log U), a static dictionary for nelement sets with constant worst case query time can be obtained using B +O(log log U)+o(n) (U) bits of storage, where B = ⌈log2 ⌉ is the minimum number of bits needed to represent all nn element subsets of U.
On Dynamic Range Reporting in One Dimension Christian Worm Mortensen ∗ IT U. Copenhagen
, 2005
"... We consider the problem of maintaining a dynamic set of integers and answering queries of the form: report a point (equivalently, all points) in a given interval. Range searching is a natural and fundamental variant of integer search, and can be solved using predecessor search. However, for a RAM wi ..."
Abstract
 Add to MetaCart
(Show Context)
We consider the problem of maintaining a dynamic set of integers and answering queries of the form: report a point (equivalently, all points) in a given interval. Range searching is a natural and fundamental variant of integer search, and can be solved using predecessor search. However, for a RAM with wbit words, we show how to perform updates in O(lg w) time and answer queries in O(lg lg w) time. The update time is identical to the van Emde Boas structure, but the query time is exponentially faster. Existing lower bounds show that achieving our query time for predecessor search requires doublyexponentially slower updates. We present some arguments supporting the conjecture that our solution is optimal. Our solution is based on a new and interesting recursion idea which is “more extreme” that the van Emde Boas recursion. Whereas van Emde Boas uses a simple recursion (repeated halving) on each path in a trie, we use a nontrivial, van Emde Boaslike recursion on every such path. Despite this, our algorithm is quite clean when seen from the right angle. To achieve linear space for our data structure, we solve a problem which is of independent interest. We develop the first scheme for dynamic perfect hashing requiring sublinear space. This gives a dynamic Bloomier filter (an approximate storage scheme for sparse vectors) which uses low space. We strengthen previous lower bounds to show that these results are optimal. 1
Abstract An Optimal Bloom Filter Replacement ∗
"... This paper considers spaceefficient data structures for storing an approximation S ′ to a set S such that S ⊆ S ′ and any element not in S belongs to S ′ with probability at most ɛ. The Bloom filter data structure, solving this problem, has found widespread use. Our main result is a new RAM data st ..."
Abstract
 Add to MetaCart
(Show Context)
This paper considers spaceefficient data structures for storing an approximation S ′ to a set S such that S ⊆ S ′ and any element not in S belongs to S ′ with probability at most ɛ. The Bloom filter data structure, solving this problem, has found widespread use. Our main result is a new RAM data structure that improves Bloom filters in several ways: • The time for looking up an element in S ′ is O(1), independent of ɛ. • The space usage is within a lower order term of the lower bound. • The data structure uses explicit hash function families. • The data structure supports insertions and deletions on S in amortized expected constant time. The main technical ingredient is a succinct representation of dynamic multisets. We also consider three recent generalizations of Bloom filters. 1
LOW REDUNDANCY IN STATIC DICTIONARIES WITH CONSTANT QUERY TIME∗
"... Abstract. A static dictionary is a data structure storing subsets of a finite universe U, answering membership queries. We show that on a unit cost RAM with word size Θ(log U ), a static dictionary for nelement sets with constant worst case query time can be obtained using B+O(log log U )+o(n) ..."
Abstract
 Add to MetaCart
(Show Context)
Abstract. A static dictionary is a data structure storing subsets of a finite universe U, answering membership queries. We show that on a unit cost RAM with word size Θ(log U ), a static dictionary for nelement sets with constant worst case query time can be obtained using B+O(log log U )+o(n) bits of storage, where B = log2 (U n) is the minimum number of bits needed to represent all nelement subsets of U.
An Optimal Bloom Filter Replacementh∗
"... This paper considers spaceefficient data structures for storing an approximation S ′ to a set S such that S ⊆ S′ and any element not in S belongs to S ′ with probability at most . The Bloom filter data structure, solving this problem, has found widespread use. Our main result is a new RAM data stru ..."
Abstract
 Add to MetaCart
(Show Context)
This paper considers spaceefficient data structures for storing an approximation S ′ to a set S such that S ⊆ S′ and any element not in S belongs to S ′ with probability at most . The Bloom filter data structure, solving this problem, has found widespread use. Our main result is a new RAM data structure that improves Bloom filters in several ways: • The time for looking up an element in S ′ is O(1), independent of . • The space usage is within a lower order term of the lower bound. • The data structure uses explicit hash function families. • The data structure supports insertions and deletions on S in amortized expected constant time. The main technical ingredient is a succinct representation of dynamic multisets. We also consider three recent generalizations of Bloom filters. 1