In Java mit mehrdimensionalen Arrays arbeiten, die 3 Spalten mit zwei Datentypen haben - Column1 kann von jedem primitiven Datentyp sein, Column2 und Column3 sind ganze Zahlen derselben Größe. Wir haben Tausende dieser Arrays mit vielen Such- und Vergleichsoperationen, daher würden wir gerne sehen, ob es schnellere/kleinere Alternativen zu Arrays vom Typ Objekt gibt. Wir müssen die Sortierreihenfolge beibehalten und Hashing vermeiden. Alle Operationen verwenden alle 3 Spalten.Effizienteste Datenstruktur für Arrays mit 2 verschiedenen Typen
Fasst man die Anforderungen: 1.
Maximieren Geschwindigkeit durch die Datenstruktur Iterieren
2. Die Größe der Datenstruktur Minimieren
3. Pflegen die Sortierreihenfolge der Array-Inhalt
4. Vermeiden Hashing (kein LinkedHashMap)
Strukturen, die wir bisher betrachtet haben:
1. Object-Array (aktuelle Implementierung)
2. Machen sie 2-Arrays (eine für jeden Datentyp) und während des Betriebs ihnen Index Blick von Array beitreten up
Hat jemand noch eine andere (bessere) Empfehlung für die Datenstruktur? Dieses Thanks :)
... ja, Hashing –
@ ɐuıɥɔɐɯ Vielen Dank für Ihren Vorschlag. Allerdings müssen wir die Sortierreihenfolge beibehalten (die Arrays sind auf diese Weise miteinander verbunden), so dass gewöhnliches Hashing keine Option ist. Wir haben versucht, LinkedHashMap, aber das war viel langsamer als ein Array von Typ Objekt. Möchte andere Alternativen – WillGetItDunn
Warum ist Java so wichtig hier? Ich würde eine ausgereifte relationale Datenbank wie Postgres verwenden. –