Back

ⓘ 2-изборно хеширање




                                     

ⓘ 2-изборно хеширање

2-изборно хеширање, такође познато као и 2-изборно уланчавање, је варијанта хеш табеле у којој се кључеви додају уз помоћ две хеш функције. Кључ се ставља на позицију у низу са најмање подударања. Потребна некаква метода решавања колизије, осим ако се кључеви чувају у скуповима. Искоришћеност ресурса у просечном случају успешне претраге је O/n), m је број кључева а n је величина низа. Највећи могућ број колизија је log 2 ⁡ ln ⁡ n + θ {\displaystyle \log _{2}\ln n+\theta } са великом вероватноћом.

                                     

1. Како ради

2-изборно хеширање користи две хеш функције h1x и h2x. Те две хеш функције треба да буду независне једна од друге и да немају ништа што их повезује. Захваљујући коришћењу две хеш функције било који integer x има две потенцијалне локације на коју могу да се складиште на основу иѕлаѕа функција h1x и h2x. Иако постоје две хеш функције, још увек постоји само једна хеш табела, и обе функције уписују кључеве у исту табелу.

                                     

2. Имплементација

Најбитније стране ове хеш имплементације су уметање и претрага.

Уметање: Кад умећемо вредности обе хеш функције се рачунају се објекат који треба да се уметне. Објекат се затим ставља у скуп са мање објеката. Ако су скупови једнаке величине, подразумевана локација је h1x вредност.

Претрага: Ефикасне претраге се врше проверавањем оба скупа, тј. локације скупова на које су h1x и h2x мапиране за жељену вредност.

                                     

3. Брзина и ефикасност

Као што је случај са свим хеш табелама, учинак се посматра на највећем скупу. Иако има случајева где величине скупова могу да буду велике на основу вредности и хеш функција које се користе, то је ретко. Захваљујући коришћењу две хеш функције имамо две могуће локације за сваку вредност, због чега постоји још мања вероватноћа да ће дође до великих скупова. Очекивана величина скупа приликом коришћења 2-изборног хеширања је: θloglogn).

Битно: Принцип коришћења више хеш функција је оптимизиран помоћу две хеш функције. Неће доћи до побољшања ако се број хеш функција повећа - 3 хеш функције нису ефикасније 2.

Users also searched:

...