18.09.2013 Views

2002:25

2002:25

2002:25

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

4.4.7 Open Addressing<br />

I open addressing är alla data sparade i själva hashtabellen. Kollisioner löses genom att<br />

beräkna en sekvens av hash slots. Sekvensen undersöks successivt till man hittar en tom plats.<br />

Fördelen är att man kan undvika att använda pekare. Minnet som man sparar genom att inte<br />

använda pekare kan användas till att skapa en större hashtabell om nödvändigt. Två exempel<br />

av open addressing är linear probing och quadratic probing [3].<br />

4.4.8 Linear Probing<br />

Linear Probing går ut på att hashtabellen gås igenom steg för steg tills en ledig plats hittas.<br />

Där läggs sedan hashvärdet.<br />

F(i) = i vilket ger att f(1) = 1, f(2) = 2 osv<br />

H(x)->y<br />

N-1<br />

0<br />

xxxxxx<br />

4.4.9 Quadratic Probing<br />

y+1<br />

y+2<br />

Figur 4-2: Linear Probing<br />

Quadric Probing fungerar på ett liknande sätt som Linear Probing, skillnaden är att<br />

hashtabellen gås igenom i steg baserade på i^2 istället för i. Detta innebär:<br />

f(i) = i^2 vilket ger att f(1) = 2, f(2) = 4 osv. och då y+1, y+4, osv<br />

29<br />

y + f(i)

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!