FB18 - Das Forum für Informatik

fb18.de / Bachelorstudieng / PM Praktische Informatik

Divisionsmethode

Divisionsmethode 2008-03-16 12:11
Anonymer User
zieh mir grade hashing rein und bin auf das hier zu divisionsmethode gestossen
In diesem Fall sind einige Werte von m aber besser als andere. Wenn zum Beispiel m gerade ist, so wird h(k) genau dann gerade sein, wenn k schon gerade war. Außerdem sollte man berücksichtigen,dass wir im Binärsystem rechnen. Daher ist es ungünstig, wenn m eine Potenz von 2 ist (m = 2^p), weil
dann bei der Berechnung des Hash-Werts von k nur die letzten p Bits berücksichtigt werden (natürlichkann man diese Hash-Funktion verwenden, wenn man weiß, dass alle 1-0-Verteilungen in den letztenp Bits gleich wahrscheinlich sind).
Ich verstehe nicht ganz was das für eine auswirkung hat wenn man nur die letzten p Bits berücksichtig??
Im Skript steht: m = 2p: nur die p-letzten Bits werden zur Generierung von h(k)
herangezogen
Heist das es wird der hashwert h(k) generiert und davon sollen dannnur die letzten p bits für die weiter verarbeitung genutzt werden???

RE: Divisionsmethode 2008-03-19 22:12
T
Ich verstehe nicht ganz was das für eine auswirkung hat wenn man nur die letzten p Bits berücksichtig??
überleg dir dass doch am dezimalsystem:
2345123 mod 100 = 23
2352342345 mod 100 = 45
es werden nur die letzten zwei ziffern berücksichtigt. das ist schlecht. im binärsystem sieht das genauso aus:
1010110110110 mod 100 = 10
10010100110110 mod 100 = 10
auch hier werden nur die letzten zwei ziffern berücksichtigt.

beim hashing soll ein grosser wertebereich so auf einen kleinen abgebildet werden, dass die werte möglichst gut verteilt sind. nun könnte es sein, dass die letzen zwei stellen im originalen wertebereich stets 00 sind - warum auch immer. das wäre schlecht. und um sich mit solchen besonderheiten der werte nicht beschäftigen zu müssen will man hashing-funktionen haben, die alle stellen einer zahl berücksichtigen.