You are on page 1of 19

Algoritmalara Giri

6.046J/18.401J
DERS 8
Kym Fonksiyonu(Hashing II)
Evrensel kym fonksiyonu
Evrensellik teoremi
Evrensel kym fonksiyonlar
kmesini yaplandrmak
Mkemmel kym fonksiyonu
Prof. Charles E. Leiserson
October 5, 2005 Copyright 2001-5 by Erik D. Demaine and Charles E. Leiserson L7.1
Kym fonksiyonunun bir zaaf
Problem: Her kym fonksiyonu h iin, kym
tablosuna ortalama eriim sresini ok byk lde
arttracak bir anahtar kmesi vardr.
Rakibiniz bir i yuvas iin tm anahtarlar
{k U : h(k) = i}'den elde edebilir.
FKR: Kym fonksiyonunu tm anahtarlardan
bamsz olacak ekilde rastgele sein.
Rakibiniz kodunuzu gryor olsa bile,
hangi kym fonksiyonunun seileceini
kesinlikle bilmediinden, kt bir anahtar kmesi
bulamayacaktr.
October 5, 2005 Copyright 2001-5 by Erik D. Demaine and Charles E. Leiserson L7.2
Evrensel kym fonksiyonu
Tanm. U bir anahtarlar evreni ve H de snrl
saydaki kym fonksiyonlarnn kmesi olsun;
herbiri U ' yu {0, 1, , m1}' e elemlesin.
H ' nin evrensel olmas iin: x, y U ve x y, ile
|{h H : h(x) = h(y)}| = |H| / m olmas gerekir.
Yani, x ile y arasnda
bir arpma
{h :h(x)=h(y)}
H
olasl :
1/m 'dir; koul: h' nin
|H
H' den rastgele seimi.
m
October 5, 2005 Copyright 2001-5 by Erik D. Demaine and Charles E. Leiserson L7.3
Evrensellik iyidir
Teorem. h (tekbiimli olarak) rastgele seilmi
bir kym fonksiyonu olsun; seim evrensel bir H
kym fonksiyonlar setinden yaplm olsun. h' nin
n rastgele anahtar T tablosundaki m yuvaya
kymladn farzedin.
Bu durumda verilen bir x anahtar iin:

E[x ile arpma says] < n/m.
October 5, 2005 Copyright 2001-5 by Erik D. Demaine and Charles E. Leiserson L7.4
Teoremin kant
Kant. C
x
, T ' nin iindeki anahtarlarla x' in
toplam arpma saysn gsteren rastgele deiken
olsun; ve
1 eer h(x) = h(y),
c =
xy
0 (dier durumlarda) olsun.
Not: E[c
xy
] = 1/m ve C
x
=

c
xy
.
} { T y x
October 5, 2005 Copyright 2001-5 by Erik D. Demaine and Charles E. Leiserson L7.5
Kant (devam)


[ C E
x
] = E


ki tarafn da
beklenenini bulun.
c
xy
} { T y x
October 5, 2005 Copyright 2001-5 by Erik D. Demaine and Charles E. Leiserson L7.6
Kant (devam)


[ C E
x
] = E
ki tarafn da beklenenini
bulun.


c
xy
} { T y x

= [c E
xy
] Beklenenin dorusall
(expectation). } { T y x
October 5, 2005 Copyright 2001-5 by Erik D. Demaine and Charles E. Leiserson L7.7
Kant (devam)


[ C E
x
] = E


ki tarafn da beklenenini
bulun.
c
xy
} { T y x

= [c E
xy
] Beklenenin dorusall
(expectation). } { T y x

= 1/ m
E[c
xy
] = 1/m.
} { T y x
October 5, 2005 Copyright 2001-5 by Erik D. Demaine and Charles E. Leiserson L7.8
Kant (devam)


C E [
x
] = E Her iki tarafn da
beklenenini bulun.


c
xy
T y x } {

= [c E
xy
] Beklenenin dorusall
(expectation). T y x } {

= 1/ m E[c
xy
] = 1/m.
T y x } {
1
Cebir. .
n
=
m
October 5, 2005 Copyright 2001-5 by Erik D. Demaine and Charles E. Leiserson L7.9
Bir evrensel kym fonksiyonlar
setini yaplandrmak
m asal say olsun. k anahtarn r + 1 basamaa
ayrtrn; herbirinin set iinde deeri {0, 1, , m1}
olsun. Yani, k = k
0
, k
1
, , k
r
ve 0 k
i
< m olsun.
Rastgele yapma stratejisi:
a = a
0
, a
1
, , a
r
olsun; burada a
i ,

{0, 1, , m1} arasndan rastgele seilmitir.
r
Tanm: h
a
(k ) =

k a
i
mod m .
Nokta arpm,
i
mod m (lke)
i=0
|H| = m
r + 1
.
BUNU
- H = {h
a
}ne byklkte?
HATIRLAYIN!
October 5, 2005 Copyright 2001-5 by Erik D. Demaine and Charles E. Leiserson L7.10
Nokta - arpm kym fonksiyonlarn
evrensellii
Teorem. H = {h
a
} seti evrenseldir.
Kant. x = x
0
, x
1
, , x
r
olduunu varsayn ve y =
y
0
, y
1
, , y
r
farkl anahtarlar olsun. Yani, en az bir
basamakta farkl olsunlar ve log pozisyonu 0 olsun.
Ka h
a
H iin x ve y arprlar?
h
a
(x) = h
a
(y) olmas gerekir ve bunun anlam:
r r

x a
i


y a (mod m)
i i i
i=0 i=0
October 5, 2005 Copyright 2001-5 by Erik D. Demaine and Charles E. Leiserson L7.11
Kant (devam)
Benzer yaklamla, elimizde
r

a
i
(x
i
y
i
) 0 (mod m)
i= 0
veya
r
a
0
(x
0
y
0
) +

a
i
(x
i
y
i
) 0 (mod m) ,
i= 1
olur ve bu da u anlama gelir:
r
a
0
(x
0
y
0
)

a
i
(x
i
y
i
) (mod m) .
i= 1
October 5, 2005 Copyright 2001-5 by Erik D. Demaine and Charles E. Leiserson L7.12
Say teorisinin gerei
Teorem. m asal say olsun. Herhangi bir z Z
m
ve z 0 iin, zgn bir z
1
Z
m
vardr ve bu durumda:
z z
1
1 (mod m). (lke m) olur.
rnek: m = 7.
z 1 2 3 4 5 6
z
1
1 4 5 2 3 6
October 5, 2005 Copyright 2001-5 by Erik D. Demaine and Charles E. Leiserson L7.13
Kanta geri dn
Elimizde
r
a
0
(x
0
y
0
)

a
i
(x
i
y
i
) (mod m) var,
i= 1
ve x
0
y
0
, olduundan tersi de (x
0
y
0
)
1
olmaldr,
ve bu da u anlama gelir:
r

a
0


a
i
(x
i
y
i
)

(x
0
y
0
)
1
(mod m)
.

i= 1

Yani, herhangi bir a
1
, a
2
, , a
r
, seiminde
tek a
0
seimi, x ile y 'nin arpmasna neden olur.
October 5, 2005 Copyright 2001-5 by Erik D. Demaine and Charles E. Leiserson L7.14
Kant (tamamlanmas)
S. Ka tane h
a
, x ile y' nin arpmasna neden olur?
C. Her a
1
, a
2
, , a
r
iin m seenek vardr ama,
bunlar bir kez seildiinde, sadece bir tane
a
0
x ile y' yi arptrabilir, yani


r

(x
0
y
0

)
1


= a
i
(x
i
y
i
) mod m . a
0

i 1 =
Bylece, arpmaya neden olabilecek h lerin
a
says = m
r
1 = m
r
= |H|/m.
October 5, 2005 Copyright 2001-5 by Erik D. Demaine and Charles E. Leiserson L7.15
40 37 22
26
14 27 4 31
1 00
9 86
Mkemmel kym fonksiyonu
n anahtarl bir set verilirse, bir statik kym tablosunu
boyutu m = O(n) olacak ekilde yaplandrn ve
ARAMA (SEARCH) en kt durumda (1) sre alsn.
40 37
26
14 27
S
4
S
6
4 31
1 00
9 86
h
31
(14) = h
31
(27) = 1
T
S
1
FKR: Her iki
dzeyde de
0
1
evrensel kym
2
ile 2 dzeyli 3
veri tanmlama. 4

2. dzey
5
arpmas yok!
6
m a 0 1 2 3 4 5 6 7 8
October 5, 2005 Copyright 2001-5 by Erik D. Demaine and Charles E. Leiserson L7.16
22
2. dzeyde arpmalar.
Teorem. H , evrensel kym fonksiyonu trlerinden
biri olsun ve boyutu da m = n
2
olsun. Bu durumda, eer
bir rastgele h H ' yi n anahtar tabloya kymlamakta
kullanrsak, beklenen arpma says en ok 1/2 olur.
Kant. Evrenselliin tanm gerei, tablodaki belirli
) (
2 anahtarn h altnda arpma olasl
n
1/m = 1/n
2
2
anahtar olduundan, arpmalarn beklenen says:
olur. arpma olaslkl ift



1
=
( n n 1)

1
<
1
.
2 n
2 2
2 2 n
October 5, 2005 Copyright 2001-5 by Erik D. Demaine and Charles E. Leiserson L7.17
2. dzeyde arpma yoktur
Corollary/ Doal sonu. Hi arpma olmamas
olasl en az 1/2 dir.
Kant. Markovun eitsizlii erevesinde herhangi
bir negatif olmayan rastgele deiken X iin,
Pr{X t} E[X]/t dir.
Bu eitsizlii t = 1, durumuna uygularsak, 1 yada
daha fazla arpma olaslnn en ok 1/2 olduunu
buluruz.
Bylece, H 'nin iindeki rastgele kym fonksiyonlarn
test ederek, abucak alan bir tanesini buluruz .
O
ctob
Copyright 2001-5 by Erik D. Demaine and Charles E. Leiserson L7.18
Depolamann zmlenmesi
Dzey-1 deerli kym tablosu T iin, m = n sein ve
n
i
de T 'deki i yuvasna kymlanan anahtarlar belirten
rastgele deiken olsun. Burada n
i
2
yuval dzey-2
kym tablosu S
i
kullanlrsa iki-dzeyli veri tanmlama
ilemi iin gerekli beklenen toplam depolama
E


m 1


i = 0
( ) n
i


2
= (n)
olur,
nk buradaki zmleme daha nce ele alnan
sepet sralamasnn beklenen koma sresindekinin
ayndr. (Olaslk snr iin Markov'u uygulayn.)
October 5, 2005 Copyright 2001-5 by Erik D. Demaine and Charles E. Leiserson L7.19

You might also like