Hallo,
ich habe folgende Aufgabe:
Gegeben seien Wörter der Form Ziffer [Ziffer] Buchstabe. Die eckigen Klammern drücken dabei optionale Teilwörter aus. Als Buchstabe sind die 26 Buchstaben des lateinischen Alphabets zugelassen, als Ziffern 0 bis 9.
Entwerfen Sie eine Hashfunktion, die sämtliche Wörter exakt gleichmäßig auf eine 143 Plätze umfassende Tabelle (indiziert von 0 bis 142) verteilt.
Folgendes habe ich mir überlegt:
Wenn ich die nur die obligatorischen Teilwörter verwende, komme ich auf 10 x 26 = 260 verschiedene Teilwörter. Die kann ich schon mal nicht gleichmäßig auf 142 verschiedene Tabellenplätze verteilen. Auf diese Weise habe ich rechnerisch schon ein wenig herum experimentiert, aber ich bin zu keinem Ergebnis gekommen. Hat jemand vielleicht eine Idee?
ich habe folgende Aufgabe:
Gegeben seien Wörter der Form Ziffer [Ziffer] Buchstabe. Die eckigen Klammern drücken dabei optionale Teilwörter aus. Als Buchstabe sind die 26 Buchstaben des lateinischen Alphabets zugelassen, als Ziffern 0 bis 9.
Entwerfen Sie eine Hashfunktion, die sämtliche Wörter exakt gleichmäßig auf eine 143 Plätze umfassende Tabelle (indiziert von 0 bis 142) verteilt.
Folgendes habe ich mir überlegt:
Wenn ich die nur die obligatorischen Teilwörter verwende, komme ich auf 10 x 26 = 260 verschiedene Teilwörter. Die kann ich schon mal nicht gleichmäßig auf 142 verschiedene Tabellenplätze verteilen. Auf diese Weise habe ich rechnerisch schon ein wenig herum experimentiert, aber ich bin zu keinem Ergebnis gekommen. Hat jemand vielleicht eine Idee?