Konuyu görüntüle
IUCODERS FORUM > Programlama > Diğer (COBOL,asp php js..) > lich hashing algoritmas?
Yazar
fratcashtime


avatar

Kayıt: 19.01.2006
21.01.2006-02:06 #456
bu lich algoritmasından haberi olan varsa bildiklerini yazabilir mi şimdiden teşekkürler









Yazar
sis***


avatar

Kayıt: 15.01.2006
21.01.2006-02:24 #458
bildiğin lisch gibi , yani collesion olduğundan en üst boş göze yerleşim oluyor.Fakat fark şudur ki ; tablonun altta belli bir kısmı kiler(cellar) olarak ayrılmıştır.Kilere sadece collesion sonucu gelenler girebilir, yani F(KEY)= x mod P için x hiçbir zaman kileri göstermemelidir.Kitaptaki örnekte dikkat edersen liker için 11-7 arası ayrılmış ve hash sonucu kilere direkt olarak eleman gelmemesi için mod 7 kullanılmıştır , eğer mod 11 kullanılsaydı F(KEY)=10 mod 11 gibi bir sonuçta gelen eleman kilere direkt yerleşmiş olacaktı ki bu yanlıştır , sadece collesiona uğrayanlar kilere yerleşebilir.Dikkat edilmesi gereken bir hususta eğer kiler dolduysa ve hala yerleşmesi gereken elemanlarınız varsa ve bunlar collesiona uğrarlarsa kiler boyutunuz ihtiyacınızı karşılayamamış demektir , bu nedenle ki kiler sayısı artırılmalıdır , bu arada kiler hacmindeki artış kadar Mod da olması gereken düşüş unutulmamalıdır.Kitaptaki örnek için eğer kileri 6-11 yaparsak Mod 6 yı kullanabiliriz.Umarım faydalı olur.

Bir soruda ben sorayım : Two bucket tree için collesion olması durumunda tree ye yerleşim sırasında herhangi bir node da 2 eleman bulunduğunda Quotient için nasıl bir yöntem izlenmelidir?
1-) 2. buckettakinin quotientine göre hareket edilir ?
2-) 1. buckettakinin quotientine göre hareket edilir ?
3-) İkisinin quotientinin ortalaması alınır?
4-) başka birşey.....?





University Of Minnesota- Minnesota(ABD)




Yazar
fratcashtime


avatar

Kayıt: 19.01.2006
22.01.2006-11:36 #592
ilgin için teşekkürler benim anlayamadığım şöyle bir durum ortaya çıktı

örnek

8 boş
9 99
----------kiler
10 55
11 23
12 11
13 57

şimdi benim elimde artmış bir sayı örneğin 36 var bunda collision oluştu kiler de dolu kileri genişletme olayı olunca 9 da da normal kendi modundan girmiş bi eleman var kileri genişletmeden kasıt bütün kayıtları böyle bir durumla karşılaşınca örneğin kileri 5 yaptık mod 10 iken mod 9 a düşürdük ve kayıtları sokmaya hepsini boşaltıp tekrar en baştan mı başlayacağız ????
senin soruna da benim görüşüm ikincisinden almak olacak çünkü bir sayıyı aradığında 7.satırda örnek 27 37 olsun ben de 57 yi çekmek istiyorum 27 ye baktım o değil 37 ye baktım o da değil ondan sonra tekrar başa dönmesi mantıksız olur gibi geliyor direk 57 nin adresini 37 ye sorar gibi geliyor bana









Yazar
sis***


avatar

Kayıt: 15.01.2006
22.01.2006-11:45 #593
Cevabın için saol ... Evet dediğin gibi bir durumda, hepsini yeniden, yeni moda göre tabloya koyman gerekiyor .





University Of Minnesota- Minnesota(ABD)




Del.icio.us
Digg
Facebook
Furl
Google
Blink
Simpy
Spurl
Y! MyWeb