PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Hashorganisation bzw. hashfunktion...


DerWolf
29.09.2002, 20:04
Hallo ihr,
ich hab ne Frage zum Thema Hash-Funktionen. Und zwar:
Ich muss in der Schule eine Art Rechtschreib-Programm schreiben. Dazu werden in einer Datei beliebige Wörter eingetragen. Wenn ich nun einen Text kontrolliere, muss ich in der Datei schaun ob das Wort enthalten ist. Das ganze wird dann mit 3 Hash-funtionen gemacht um schnellst möglich das Wort zu finden. Nun hab ich aber ein Problem und zwar das bei der hash funktion die ich kenn Zahlen über 32bit Integers rauskommen. Gibts da eine Funktion die innerhalb der 32bit Grenzen bleibt? Danke, bis dann :)


Jan Krüger
30.09.2002, 00:59
wenn die hash-funktion die werte gut verteilt, kannst du den rest einfach abschneiden (C-code)
hash_32bit = (hash_38bit & 0xffffffff);

aber wie schaffst du es, mehr als 32 bit in einer variable zurückgeliefert zu kriegen? oder ist es gar eine klasse oder irgendein komisches konstrukt (welche sprache eigentlich)?

PS. wenn dir das nicht gefällt, willst du dann fertigen sourcecode für eine alternative?

DerWolf
30.09.2002, 15:15
Naja, das is so, ich muss das Prog in TPascal schreiben. Aber ich werd einfach Real nehmen oder Extended, dann wirds schon gehen. Dachte vorher, dass ich nur LongInt benutzen darf bis der Lehrer sagte das alles erlaubt sei und nur die Position als LongInt zurückgegeben wird :) Danke dir trotzdem, BYe