www.wikidata.de-de.nina.az
In der Informatik ist ein Treap gebildet aus binary search Tree Binarer Suchbaum Heap wortlich Haufen Halde ein binarer Suchbaum Jeder Knoten x besteht aus zwei Elementen x key Element x priority Prioritat Treaps wurden im Jahr 1989 von Cecilia R Aragon und Raimund G Seidel Universitat des Saarlandes erfunden Eine alternative Bezeichnung ist Balde gebildet aus Baum und Halde Inhaltsverzeichnis 1 Elemente 2 Prioritaten 3 Suche nach einem Element 4 Einfugen eines Elementes 5 Entfernen eines Elementes 6 Kleinstes grosstes Element finden 7 Alle Elemente auflisten 8 Literatur 9 WeblinksElemente BearbeitenSie erfullen die Eigenschaften des binaren Suchbaums Binary search Tree Das bedeutet Die Elemente y im linken Teilbaum von x erfullen key y lt key x Die Elemente y im rechten Teilbaum von x erfullen key y gt key x Prioritaten BearbeitenPrioritaten erfullen die Eigenschaften des Heaps Das bedeutet Alle Prioritaten sind verschieden Zufallszahlen Die Wurzel hat die kleinste Prioritat oberstes Element Wenn y ein Kind von x ist dann gilt prio y gt prio x Suche nach einem Element BearbeitenDie Suche erfolgt wie in einem binaren Suchbaum Der zu suchende Wert k wird mit dem Wert der Wurzel verglichen Ist k grosser vergleicht man den Wert mit dem nachsten Knoten im rechten Teilbaum wenn kleiner dann im linken Zu erwartende Laufzeit O log n displaystyle mathcal O log n nbsp Einfugen eines Elementes BearbeitenUm ein Element e in einen Treap einzufugen erstellt man einen neuen Knoten x speichert das Element e in x key und wahlt eine zufallige Prioritat fur x priority Nun fugt man den Knoten mittels x key gemass den Eigenschaften des Binaren Suchbaums in den Treap ein Da durch den neuen Knoten nun die Heap Eigenschaft verletzt sein konnte rotiert man den Knoten nun solange hinauf bis die Heap Bedingung wieder erfullt ist Zu erwartende Laufzeit O log n displaystyle mathcal O log n nbsp Die zu erwartende Tiefe ist logarithmisch Die Anzahl der zu erwartenden Rotationen ist 2 Entfernen eines Elementes BearbeitenMan sucht die Position des zu entfernenden Knotens x im Baum Man wechselt die Prioritat auf unendlich Man rotiert den zu entfernenden Knoten zu der Seite hin wo die grossere Prioritat ist bis die Heap Bedingung erfullt ist also insbesondere bis das zu loschende Element ein Blatt ist Das Element ist jetzt ein Blatt und kann geloscht werdenZu erwartende Laufzeit O log n displaystyle mathcal O log n nbsp Die zu erwartende Tiefe ist logarithmisch Die Anzahl zu erwartender Rotationen ist 2 Kleinstes grosstes Element finden BearbeitenDa die Elemente in einem Treap in der Ordnung eines normalen Binaren Suchbaums gespeichert sind ist das kleinste Element ganz links unten und das grosste Element ganz rechts unten zu finden Somit muss man um das kleinste Element zu finden immer in den linken Teilbaum absteigen und um das grosste Element zu finden immer in den rechten Teilbaum absteigen Zu erwartende Laufzeit O log n displaystyle mathcal O log n nbsp da die zu erwartende Tiefe logarithmisch ist Alle Elemente auflisten BearbeitenGibt alle Elemente in aufsteigender Reihenfolge aus Wird durch den in order Durchlauf durchgefuhrt zwischen den zwei Teilbaumen Laufzeit ist O n displaystyle mathcal O n nbsp Literatur BearbeitenThomas H Cormen Charles E Leiserson Ronald L Rivest Clifford Stein Algorithmen eine Einfuhrung Oldenbourg Munchen Wien 2004 ISBN 3 486 27515 1 englisch Introduction to algorithms Ubersetzt von Karen Lippert Micaela Krieger Hauwede Weblinks BearbeitenWissenschaftliches Dokument uber Treaps von Raimund Seidel englisch Linkliste zum Thema Treaps von Cecilia R Aragon Abgerufen von https de wikipedia org w index php title Treap amp oldid 173242020