2010-12-16 2 views
1

Ich bin gerade in einem Datenstrukturkurs und wir haben über 2-3-4 Bäume und Splay-Bäume gelernt. Ich frage mich, unter welchen Umständen würden Sie einen 2-3-4-Baum anstelle eines Splay-Baumes verwenden? Sie sind beide selbst ausgleichend und sortiert, so dass ich keinen großen Unterschied zwischen ihnen sehe.Verwenden eines 2-3-4 Baumes anstelle eines Splay-Baumes

Antwort

1

Eine 2-3-4 tree ändert nur die Struktur bei Einfügungen und Löschungen, während eine splay-tree auch die Knoten bei Suchvorgängen neu organisiert.

Splay-Bäume werden dank der Reorganisation beim Nachschlagen schnellere Antworten liefern, wenn Ihr typisches Verwendungsmuster die meiste Zeit nach einer kleinen Teilmenge von Elementen sucht.

Es ist möglich, einen 2-3-4-Baum zu implementieren, so dass das kleinste Element in O (1) nachgeschlagen werden kann, aber im Allgemeinen bieten beide Einfügen und Löschen bei amortisiertem O (log n).