Heim >Java >javaLernprogramm >Wie können Versuche verwendet werden, um dünn besetzte Arrays effizient darzustellen?
Versuche können spärliche Arrays darstellen, indem sie Segmente der Daten in einen einzelnen Vektor verteilen.
Der Trie kann mit zwei Lese- und Schreibvorgängen feststellen, ob ein Element in der Tabelle vorhanden ist. Nur Array-Indizierungen, um die effektive Position zu ermitteln, an der ein Element gespeichert ist, oder um zu wissen, ob es im zugrunde liegenden Speicher fehlt.
Außerdem stellen Versuche eine Standardposition im Sicherungsspeicher für den Standardwert des Sparsed bereit Array, sodass Sie keinen Test für den zurückgegebenen Index benötigen, da der Trie garantiert, dass alle möglichen Quellindizes mindestens der Standardposition im Sicherungsspeicher zugeordnet werden (wo Sie häufig eine Null oder eine leere Zeichenfolge speichern). oder ein Nullobjekt).
Versuche sind viel schneller als Hashmaps, da sie keine komplexe Hashing-Funktion benötigen und keine Kollisionen für Lesevorgänge verarbeiten müssen. Darüber hinaus können Java-Hashmaps nur Objekte indizieren, und das Erstellen eines Integer-Objekts für jeden gehashten Quellindex ist bei Speicheroperationen kostspielig, da es den Garbage Collector belastet.
Das obige ist der detaillierte Inhalt vonWie können Versuche verwendet werden, um dünn besetzte Arrays effizient darzustellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!