Was sind die Vorteile der alle Elemente in den Blattknoten zu speichern?

stimmen
13

Ich lese Erweiterte Datenstrukturen von Peter Messing.

Am Anfang des Kapitels über die Suchbäume, stellte er fest, dass es zwei Modelle der Suchbäume ist - eine, wo Knoten das eigentliche Objekt enthalten (der Wert, wenn der Baum als Wörterbuch verwendet wird), und eine andere, in der alle Objekte gespeichert sind in Blätter und interne Knoten sind nur für Vergleiche.

Was sind die Vorteile des zweiten Modells über die ersten?

Veröffentlicht am 14/10/2010 um 18:57
quelle vom benutzer
In anderen Sprachen...                            


4 antworten

stimmen
0

und Speicher von Informationsobjekten in dem Knoten, wir über eine Trie in diesem Fall sprechen, sehr nützlich für eine schnelle retrival von Informationen (schneller als Material in einer Array / Hash-Tabelle zu speichern, wobei der auf Worst-Case-acces ist O (n), in der Trie Dies ist O (m) [m ist die Länge von n])

schau mal hier: https://en.wikipedia.org/wiki/Trie

In einem Suchbaum können diese oerations viel komplizierter sein (sehen AVL Tree O (log n)) und kann so sein langsamer und Compley zu implementieren ist.

Welche Datenstruktur wählen ?? Nun, das hängt davon ab, was u tun wollen

Beantwortet am 14/10/2010 um 19:15
quelle vom benutzer

stimmen
9

Einer der großen Vorteile eines binären Baum, in dem Daten nur in den Blattknoten ist, dass Sie auf Elemente basierend Partition kann, die nicht in ihrem Datensatz sind.

So sind zum Beispiel , wenn ich eine mögliche Datenmenge von 0-1 Millionen, aber die überwiegende Mehrheit der Produkte habe entweder am oberen Ende oder unteres Ende , aber nicht in der Mitte, kann ich will noch mein ersten gegen 500.000 vergleichen - auch wenn diese Zahl ist in meinem Datensatz nicht . Wenn jeder Knoten Daten hat, konnte ich dies nicht tun. Oft läuft in dieser Unterteilung basierend auf einem Wert außerhalb meiner Daten vereinfachten Implementierung Während normalerweise nicht in der Theorie benötigt, ich habe.

Beantwortet am 14/10/2010 um 19:15
quelle vom benutzer

stimmen
3

B + Bäume sind ein Beispiel für einen Fall, in dem alle Schlüssel / Werte werden in Blattknoten gespeichert. Der primäre Vorteil hierbei ist, dass da alle Elemente in dem Blattknoten sind, können die Blattknoten miteinander verbunden werden, um eine Liste zu bilden, die Traversal rasche in Ordnung ermöglicht. Wenn Sie ein bestimmtes Element zuzugreifen, können Sie immer das nächste Element in der Sequenz finden, ohne Eltern zu besuchen, weil der Blattknoten miteinander verbunden ist. Dateisysteme und Datenbankspeichersysteme können die Vorteile dieser Strukturen für die Bereichssuche und Sachen nehmen.

Beantwortet am 29/11/2011 um 12:07
quelle vom benutzer

stimmen
1

Lassen Sie uns sagen Sie Baum über einige Objekte auf einige komplexe Kriterien bauen. Am Beispiel von mehreren Eigenschaften berechnet. Manchmal kann man dieses Objekt nicht zum Speichern von berechneten Wert ändern und diese Kriterien Berechnung ist expansiv. So können Sie diese Kriterien berechnen nur einmal, und speichern Objekte in Blätter auf Kriterien zur Folge haben. Dann, wenn der Baum abgeschlossen ist, können Sie gewünschtes Objekt viel schneller finden, weil Sie Kriterien nicht für jeden Baumknoten in Ihrem Pfad berechnen müssen.

Beantwortet am 29/11/2011 um 17:55
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more