Hi,
gepostet frühmorgens um halb Acht? Immer noch auf? "Schon wieder" wäre
für Dich als Student ja doch eher unwahrscheinlich, oder?Doch, ich bin heute mal frueh aufgestanden, um 07:00 -- um mich wieder an
die Zeiten waehrend der Vorlesungen zu gewoehnen :)
Und das soll ich glauben? Findest Du das nicht ein wenig viel verlangt?
Was ich mit genauere Hash-Funktion meinte war, die Hash-Funktion des
Hashes aus der ersten Ebene benutzen, aber das Ergebnis nicht abschneiden
sondern in einer hoeheren Genauigkeit zu benutzen. Da muss man dann aber
auch mit groesseren Tabellen leben. Muss man halt abwaegen.
Dazu mußt Du aber auch die normalerweise 32/64 Bit (oder was auch immer der Grundtyp der Architektur ist) langen Hashwerte komprimieren, da kannst Du für nur ein paar Zyklen mehr auch gleich eine komplette neue Hashfunktion drauf ansetzen, die ist dann auch deutlich unabhängiger zur Ersten.
Mmh...
Wenn der ursprüngliche Hashwert noch zur Hand ist und der wie üblich 32/64 Bit lang ist könnte man ihn mit der Adresse der angehangenen Hashtabelle (die Subhashtabelle) XORen. Diese angesprochene Adresse ist ja unabhängig vom Eingangswert, von dem der Hashwert gebildet wurde. Der Eingangswert muß damit nicht vollständig durchgeklappert werden, falls es sich wie hier um Strings variabler Länge handelt. Spart ein paar Zyklen im Gegensatz zum vollständigem Hash und braucht keine größeren Tabellen.
Aber jetzt fang ich ja selber schon mit Mikrooptimierung an.
so short
Christoph Zurnieden