Hallo Habo,
angenommen wir haben diese sehr stark vereinfachte Klasse Rational.
Ich möchte jetzt eine Hashfunktion für Brüche schreiben.
Dabei ist folgende Struktur vorgegeben :
Eine Hashfunktion soll aus einer Eingabe (Parameter oder Klassenvariablen) immer einen Wert in einem bestimmten Wertebreich erzeugen und wenn ich das für Objekte mache, dann müssen die Objekte ja den gleichen Wert von der Hashfunktion bekommen, wenn diese equal sind?
Dann gibt es im Prinzip doch jetzt tausend Möglichkeiten, wie ich eine Hashfunktion schreiben könnte?
usw...
Ist das korrekt oder muss ich mich immer auf nenner und zaehler beziehen?
LG , weau
angenommen wir haben diese sehr stark vereinfachte Klasse Rational.
Code:
public class Rational{
private int zaehler;
private int nenner;
//Konstruktor
public Rational(int zaehler, int nenner){
this.zaehler = zaehler;
this.nenner = nenner;
}
usw...
}
Ich möchte jetzt eine Hashfunktion für Brüche schreiben.
Dabei ist folgende Struktur vorgegeben :
Code:
public int hash(){
}
Eine Hashfunktion soll aus einer Eingabe (Parameter oder Klassenvariablen) immer einen Wert in einem bestimmten Wertebreich erzeugen und wenn ich das für Objekte mache, dann müssen die Objekte ja den gleichen Wert von der Hashfunktion bekommen, wenn diese equal sind?
Dann gibt es im Prinzip doch jetzt tausend Möglichkeiten, wie ich eine Hashfunktion schreiben könnte?
Code:
public int hash(){
return (64 * this.zaehler) % 1024;
}
Code:
public int hash(){
return (64 * this.nenner) % 1024;
}
usw...
Ist das korrekt oder muss ich mich immer auf nenner und zaehler beziehen?
LG , weau