Hash von doubles generieren

TitusTiger

Neues Mitglied
Hallo,
ich habe eine Liste von doubles und müsste einen Hash daraus generieren, um jede Liste nur einmal zu haben.
Ich habe mich für Arrays.hashCode(new double[]{}) entschieden. Allerdings gibt es ein massives Problem:

System.out.println("Hashcode of [+40, -50]: " + Arrays.hashCode(new double[]{+40, -50}));
System.out.println("Hashcode of [-40, +50]: " + Arrays.hashCode(new double[]{-40, +50}));

Ungünstigerweise kommen beide Listen auf den gleich Hash-Wert:
Hashcode of [+40, -50]: -2004548671
Hashcode of [-40, +50]: -2004548671

Das ist in meinem Fall schlecht. Kennt jemand eine Möglichkeit einen sicheren / eindeutigen Hash zu bilden? Mit "Hash" mein ich ein eindeutiges Objekt. Was auch geht ist einen String zu bilden: 40_-50 und -40_50, jedoch ist diese Methode bedingt durch die String-Operationen sehr langsam wenn man viele Listen von doubles hat.

Vielen Dank
 

TitusTiger

Neues Mitglied
Hallo,
vielen Dank. Ich probiere das mit dem CRC einmal aus. Mit dem Array.equals wird theoretisch auch gehen, allerdings passt das nicht ganz zu meinem Anwendungsfall:

Ich erhalte eine große Anzahl an double[3] Arrays (Koordinaten) und möchte sie jeweils nur einmal speichern. D. h. vor jedem Einfügen müsste ich alle bisher eingefügten Einträge einmal durchgehen und jedes neue Array mit allen bestehenden vergleichen.
Ich erhoffe mit dem Speichern der Hash- / CRC-Werte eine bessere Performance.

Vielen Dank und viele Grüße
 

InfectedBytes

Top Contributor
du kannst ja erstmal mit dem hash vergleichen und wenn der hash gleich ist, zusätzlich noch mit equals vergleichen.
Da der hassh in den meisten fällen verschieden sein wird, fällt die überprüfung mit equals direkt weg
 

JStein52

Top Contributor
Ich meine mal gelesen zu haben dass die Wahrscheinlichkeit dass der Hash gleich ist bei dem Verfahren bei ungefähr 10^-50 so etwa liegt. Da muss man den equals-Zweig zwar programmieren aber für deine Performance spielt das absolut keine Rolle.

Edit: nein, ist Quatsch. Das haengt natuerlich von deinen Daten ab. Wenn die wirklich gleich sind kommt natürlich beliebig oft der gleiche Hash raus.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
frager2345 Aufgabe Hash Objekt Elemente ausgeben Java Basics - Anfänger-Themen 2
bluetrix Hash Set hälfte entfernen Java Basics - Anfänger-Themen 7
RudiRüssel maximale Anzahl von Schlüsseln in einer Hash Tabelle Java Basics - Anfänger-Themen 2
J alternierendes Probing-Verfahren für Hash-Tabellen implementieren Java Basics - Anfänger-Themen 0
L Programmierung mit Hash Java Basics - Anfänger-Themen 3
J HashSet Methode contains liefert false (hash Methode überschrieben) Java Basics - Anfänger-Themen 3
B Denkanstoß - Hash ID für URL Java Basics - Anfänger-Themen 7
E Hash map Value Wert hochzuholen/ändern Java Basics - Anfänger-Themen 7
4a61766120617274697374 sha hash Java Basics - Anfänger-Themen 10
A Hash Tabelle Element suchen Java Basics - Anfänger-Themen 1
B Vererbung In offener Hash Tabelle einfügen Java Basics - Anfänger-Themen 4
T Integer-Objekt über Hash-Funktion in Array ablegen Java Basics - Anfänger-Themen 1
E Hash Code dekodieren? Java Basics - Anfänger-Themen 20
T Hash Map Java Doc Einführung Java Basics - Anfänger-Themen 9
E Hash Map - Null Pointer Exception? Java Basics - Anfänger-Themen 3
MU5T4NG JPasswordField als Hash in Datenbank abspeichern Java Basics - Anfänger-Themen 3
L MD5 Hash berechnen Java Basics - Anfänger-Themen 2
P Casten Hash Map Java Basics - Anfänger-Themen 4
F Hash problem Java Basics - Anfänger-Themen 29
W automatischer password hash Java Basics - Anfänger-Themen 11
M Eigene Hash Funktion Java Basics - Anfänger-Themen 5
E Hash Map?? Java Basics - Anfänger-Themen 12
K eigene Hash-Datenstruktur Java Basics - Anfänger-Themen 2
J Hash-Maps / ArrayLists testen Java Basics - Anfänger-Themen 12
I Hash Wert von Dateien erzeugen Java Basics - Anfänger-Themen 2
H java hash map: cd ablageprogramm Java Basics - Anfänger-Themen 2
G Implementieren einer Hash-Datenstrucktur Java Basics - Anfänger-Themen 3
C MD5-Hash in Java Java Basics - Anfänger-Themen 14
R Sehr kleine doubles nicht in Exponentialdarstellung ausgeben Java Basics - Anfänger-Themen 3
S Runden eines doubles auf n nachkommastellen Java Basics - Anfänger-Themen 10
StrikeTom Sortieren von doubles funktioniert nicht Java Basics - Anfänger-Themen 2
D Algorithmus, beliebige Anzahl doubles kombinieren Java Basics - Anfänger-Themen 7
D Was fürne Datenstruktur für Kreuztabelle mit doubles? Java Basics - Anfänger-Themen 1
Y Vor- und Nachkommawerte eines doubles bestimmen Java Basics - Anfänger-Themen 7
G Summe zweier doubles falsch? Java Basics - Anfänger-Themen 10
J jadfq - Formatierung von Doubles Java Basics - Anfänger-Themen 8
B Ungenauigkeit bei doubles. Java Basics - Anfänger-Themen 4
G komisches Ergebnis beim Addieren von doubles Java Basics - Anfänger-Themen 2
I QR code in Java selber generieren Java Basics - Anfänger-Themen 5
M Zufallszahl generieren mit einer linken und rechten Grenze Java Basics - Anfänger-Themen 3
JavaBeginner22 Java 2 Zufalls zahlen generieren. Java Basics - Anfänger-Themen 11
Marlena Bauer IBAN generieren (Deutschland) aus Abfrage von BLZ und Kontonummer? Java Basics - Anfänger-Themen 31
H Zufallszahlen generieren Java Basics - Anfänger-Themen 5
S Personalnummer automatisch generieren Java Basics - Anfänger-Themen 11
J Zufallszahlen generieren und Werte vergleichen Java Basics - Anfänger-Themen 3
Gaudimagspam Nummern generieren Array Java Basics - Anfänger-Themen 4
W Erste Schritte Ein Spielfeld aufbauen/generieren Java Basics - Anfänger-Themen 1
J Fehler beim generieren von 4 Zufallszahlen Zahl doppelt ist eigentlich ausgeschlossen Java Basics - Anfänger-Themen 9
B Liste von Tagen generieren ab einem bestimmten Datum und Endedatum Java Basics - Anfänger-Themen 4
S Aus gleichverteilte Zufallszahlen normalverteilte Zufallszahlen generieren ? Java Basics - Anfänger-Themen 1
G Generieren neuer ID Java Basics - Anfänger-Themen 21
J Erste Schritte Lottozahlen richtig generieren. Java Basics - Anfänger-Themen 12
SchmidiMC Methoden Random in Methode neu generieren lassen Java Basics - Anfänger-Themen 1
3 Zufalls-Zahlen aus ArrayList generieren & auslesen Java Basics - Anfänger-Themen 6
I String teilen und zwei Wörter generieren Java Basics - Anfänger-Themen 1
D Methoden Listen generieren Java Basics - Anfänger-Themen 4
T Javadoc in Eclipse generieren Java Basics - Anfänger-Themen 1
S JLabels generieren lassen Java Basics - Anfänger-Themen 1
fLooojava Passwort generieren - kleines Programm Java Basics - Anfänger-Themen 15
1 String zu int generieren Java Basics - Anfänger-Themen 7
F Vererbung Sonnensystem mit Planeten generieren Java Basics - Anfänger-Themen 11
B Erste Schritte Möglichkeiten generieren Java Basics - Anfänger-Themen 25
I Eindeutige Stringvariablen in Schleife generieren Java Basics - Anfänger-Themen 4
S Gerade bzw. Ungerade Zufallszahl generieren Java Basics - Anfänger-Themen 5
K Java source code generieren Java Basics - Anfänger-Themen 5
E einfaches Schachbrett generieren Java Basics - Anfänger-Themen 9
A JButtons dynamisch generieren mit verschiedenen actionhandlern Java Basics - Anfänger-Themen 6
J Formular generieren Java Basics - Anfänger-Themen 7
K Wie kann ich aus jar Dateien wieder normale Klassen generieren? Java Basics - Anfänger-Themen 7
R mit GregorianCalendar Datum generieren Java Basics - Anfänger-Themen 3
P Zufallszahlen fuer Lotto generieren Java Basics - Anfänger-Themen 28
K Methode Passwort generieren Java Basics - Anfänger-Themen 10
M For-Schleifen dynamisch generieren? Java Basics - Anfänger-Themen 10
G HTML Seite generieren Java Basics - Anfänger-Themen 2
E Buttons in Android generieren? Java Basics - Anfänger-Themen 4
H HTML Code generieren Java Basics - Anfänger-Themen 9
Houly Integer Zahlen generieren Java Basics - Anfänger-Themen 11
T Zeichenkette generieren lassen Java Basics - Anfänger-Themen 6
A Zufallszahlen generieren Java Basics - Anfänger-Themen 2
HaukeG Java Klasse generieren Java Basics - Anfänger-Themen 3
M Javadoc generieren Java Basics - Anfänger-Themen 4
F sudoku generieren Java Basics - Anfänger-Themen 16
G zufällige zahlen von x bis y generieren Java Basics - Anfänger-Themen 5
G FileOutputStream generieren Java Basics - Anfänger-Themen 2
C 10 zeichen password generieren Java Basics - Anfänger-Themen 16
N Eindeutige Dateinamen generieren Java Basics - Anfänger-Themen 17
M Aus WSDL Java-Code generieren. Java Basics - Anfänger-Themen 1
halla Zufallswert zwischen geg. Unter- und Obergrenze generieren Java Basics - Anfänger-Themen 3
O Variabelnamen dynamisch generieren Java Basics - Anfänger-Themen 3
D HTML code in java generieren. Java Basics - Anfänger-Themen 6
B Bericht generieren, Daten in Word/Excek exportieren Java Basics - Anfänger-Themen 5
G javadoc generieren? Java Basics - Anfänger-Themen 3
G Mehrere Objekte in Schleife generieren Java Basics - Anfänger-Themen 6
B Kann man in Java Variablen dynamisch generieren? Java Basics - Anfänger-Themen 3
G XML als byteArray generieren Java Basics - Anfänger-Themen 4
C Aus ein Image-Objekt einen InputStream generieren? Java Basics - Anfänger-Themen 6
B for- und while anweisung - 2er Potenzen generieren Java Basics - Anfänger-Themen 6
Y Dynamisch Variablennamen generieren? Java Basics - Anfänger-Themen 9
N Probleme beim generieren von Objekten Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben