Download presentation

Presentation is loading. Please wait.

Published byKellen Naughton Modified over 3 years ago

1
Uniform algorithms for deterministic construction of efficient dictionaries Milan Ružić IT University of Copenhagen Faculty of Mathematics University of Belgrade ESA 2004 / ARCO 2005 presentation

2
2 The dictionary problem How to store a set S U and answer inquires about membership: is x S ?. In the dynamic dictionary problem, S may change over time. Conditions: Compute on a unit-cost RAM with word length w and a standard instruction set, including multiplication and division. Finite universe U {0,1} w. Use space linear in n | S |.

3
3 Randomized solutions Started with a static dictionary with O(n) expected construction time, using (nw) random bits [Fredman, Komolós, Szmerédi 82]. Reached a dynamic dictionary with: Constant search time. Constant update time with probability O(1 – n -c ). Use of only O(log n + log w) random bits. [Dietzfelbinger et al 92] However, what if: random bits are not easily available, or performance without a guarantee is unacceptable?

4
4 Deterministic dictionaries with fast lookups ReferenceLookup time Construction time Compile-time precomputation Alon-Naor 94 O(w / log n)O(n w log 4 n) _ Andersson 96 O(log w loglog n)O(n)O(w O(1) ) Raman 96 O(1)O(n 2 w) _ Hagerup Miltersen Pagh 01 O(1)O(n log n) (2 (w) w) ? Our results O( t(n) ) O(n 1+1/t(n) + n t(n) log w) _ O(1)O(n w log 2 n) _

5
5 The family of hash functions Viewing the problem in a continuous setting - H R. A sufficient condition for avoiding collisions :

6
6 The set of good parameters The set of multipliers which generate less than m collisions on the set of s differences has the measure of at least We can calculate the measures with numbers of bounded precision. The set of good parameters contains sufficiently large intervals – that is, there are good multipliers which can be represented by a constant number of machine words.

7
7 Finding a good function Problem: Given a set of s differences, deterministically find a multiplier a which produces less than m colliding differences. Not all differences need to be explicitly stored in memory. We use bit by bit construction – sometimes several consecutive bits are set at once. Choosing a bit is equivalent to choosing a half of a working interval. Key observation: sets with relatively small support intervals are insignificant to current choice.

8
8 Three classes of differences The recurrence for measure estimates: 1 ( p+1 ) + 2 ( p+1 ) + E ( p+1 ) ( p ) + E ( p ) Several bits are chosen at once when D mid. O(w) term represents the total cost of finding the leftmost bits of keys.

9
9 Reducing the construction time We employ multi-level hashing scheme. The number of levels can be set by adjusting the parameters m and s. The structure of the set of differences: In the case of O(1) lookup time we set n k n, m 4n and r n. Note on evaluation: When input consists of multi-word keys, full multiplication is usually not necessary.

Similar presentations

OK

Hashing COMP171 Fall 2005. Hashing 2 Hash table * Support the following operations n Find n Insert n Delete. (deletions may be unnecessary in some applications)

Hashing COMP171 Fall 2005. Hashing 2 Hash table * Support the following operations n Find n Insert n Delete. (deletions may be unnecessary in some applications)

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google

A ppt on sound Ppt on tcp ip protocol suite layers Ppt on fdi in indian retail sector Free download ppt on albert einstein Ppt on south african culture and society Ppt on statistics in maths games Ppt on waxes biology Download ppt on naxalism in india Ppt on pin diode application Ppt on consumer rights in india