Results 1 
3 of
3
/ pagh/papers/ OneProbe Search
"... Abstract. We consider dictionaries that perform lookups by probing a single word of memory, knowing only the size of the data structure. We describe a randomized dictionary where a lookup returns the correct answer with probability 1 − ɛ, and otherwise returns “don’t know”. The lookup procedure uses ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
Abstract. We consider dictionaries that perform lookups by probing a single word of memory, knowing only the size of the data structure. We describe a randomized dictionary where a lookup returns the correct answer with probability 1 − ɛ, and otherwise returns “don’t know”. The lookup procedure uses an expander graph to select the memory location to probe. Recent explicit expander constructions are shown to yield space usage far smaller than what would be required using a deterministic lookup procedure. Our data structure supports efficient deterministic updates, exhibiting new probabilistic guarantees on dictionary running time. 1
Searching the integers
"... 1 Problem Definition Consider an ordered universe U, and a set T ⊂ U with T  = n. The goal is to preprocess T, such that the following query can be answered efficiently: given x ∈ U, report the predecessor of x, i.e. max{y ∈ T  y < x}. One can also consider the dynamic problem, where elements ar ..."
Abstract
 Add to MetaCart
1 Problem Definition Consider an ordered universe U, and a set T ⊂ U with T  = n. The goal is to preprocess T, such that the following query can be answered efficiently: given x ∈ U, report the predecessor of x, i.e. max{y ∈ T  y < x}. One can also consider the dynamic problem, where elements are inserted and deleted into T. Let tq be the query time, and tu the update time. This is a fundamental search problem, with an impressive number of applications. Later, this entry discusses IP lookup (forwarding packets on the Internet), orthogonal range queries and persistent data structures as examples. The problem was considered in many computational models. In fact, most models below were initially defined to study the predecessor problem. comparison model: The problem can be solved through binary search in Θ(lg n) comparisons. There is a lot of work on adaptive bounds, which may be sublogarithmic. Such bounds may depend on the finger distance, the working set, entropy etc. binary search trees: Predecessor search is one of the fundamental motivations for binary search trees. In this restrictive model, one can hope for an instance optimal (competitive) algorithm.
Constructing Efficient Dictionaries in Close to Sorting Time
"... The dictionary problem is among the oldest problems in computer science. Yet our understanding of the complexity of the dictionary problem in realistic models of computation has been far from complete. Designing highly efficient dictionaries without resorting to use of randomness appeared to be a pa ..."
Abstract
 Add to MetaCart
The dictionary problem is among the oldest problems in computer science. Yet our understanding of the complexity of the dictionary problem in realistic models of computation has been far from complete. Designing highly efficient dictionaries without resorting to use of randomness appeared to be a particularly challenging task. We present solutions to the static dictionary problem that significantly improve the previously known upper bounds and bring them close to obvious lower bounds. Our dictionaries have a constant lookup cost and use linear space, which was known to be possible, but the worstcase cost of construction of the structures is proportional to only log log n times the cost of sorting the input. Our claimed performance bounds are obtained in the word RAM model and in the external memory models; only the involved sorting procedures in the algorithms need to be changed between the models. 1