<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Gewichteter_bin%C3%A4rer_Suchbaum</id>
	<title>Gewichteter binärer Suchbaum - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Gewichteter_bin%C3%A4rer_Suchbaum"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Gewichteter_bin%C3%A4rer_Suchbaum&amp;action=history"/>
	<updated>2026-06-11T22:08:18Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Gewichteter_bin%C3%A4rer_Suchbaum&amp;diff=1973775&amp;oldid=prev</id>
		<title>imported&gt;DixMartin: +Link Gewicht</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Gewichteter_bin%C3%A4rer_Suchbaum&amp;diff=1973775&amp;oldid=prev"/>
		<updated>2020-02-22T09:25:26Z</updated>

		<summary type="html">&lt;p&gt;+Link Gewicht&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[File:binary_search_tree_with_weights.svg|thumb|220px|Ein binärer Suchbaum mit 2 Knoten und Gewichtsangaben (rot)]]&lt;br /&gt;
&lt;br /&gt;
In der [[Informatik]] ist ein &amp;#039;&amp;#039;&amp;#039;gewichteter binärer Suchbaum&amp;#039;&amp;#039;&amp;#039; eine Ausprägung der [[Abstrakter Datentyp|abstrakten]] [[Datenstruktur]] &amp;#039;&amp;#039;[[binärer Suchbaum]]&amp;#039;&amp;#039;, bei der jedem Knoten neben Schlüssel und anderen Daten ein [[Gewicht (Graphentheorie)|Gewicht]] (Zugriffswahrscheinlichkeit) zukommt. (Der Vollständigkeit halber kommt ein solches auch seinen Nachbarintervallen zu.)&lt;br /&gt;
&lt;br /&gt;
Zu optimieren ist die [[Gewichteter binärer Suchbaum#Zugriffsverteilung und gewichtete Pfadlänge|gewichtete Pfadlänge]] des Baums. &lt;br /&gt;
&lt;br /&gt;
Das Gewicht ist an den Schlüssel gebunden, somit ergibt das Zulassen von mehreren Objekten („Duplikaten“) mit gleichem Schlüssel keinen Sinn.&lt;br /&gt;
&lt;br /&gt;
Sind Gewichte überhaupt nicht bekannt oder sind sie untereinander praktisch gleich, dann sind [[Balancierter Baum|höhen-balancierte]] Bäume eine gute Wahl. Ein Beispiel ist der [[AVL-Baum]], der als optimiert auf die gewichtete Pfadlänge bei Einheitsgewichten angesehen werden kann.&lt;br /&gt;
&lt;br /&gt;
== Beispiele ==&lt;br /&gt;
&lt;br /&gt;
Ist der Baum statisch, spielen also Einfüge- oder Entfernoperationen keine Rolle, so bietet sich der [[Bellman-Algorithmus]] an, der einen optimalen gewichteten binären Suchbaum konstruiert. Seine Effizienz ist auch dann gegeben, wenn die Gewichte nur ungefähr bekannt sind.&lt;br /&gt;
&lt;br /&gt;
=== Geometrische Verteilung ===&lt;br /&gt;
&lt;br /&gt;
Bei der geometrischen Gewichtsverteilung &amp;lt;math&amp;gt;p_i = (1-q) q^i&amp;lt;/math&amp;gt; für &amp;lt;math&amp;gt;i = 0,1,...&amp;lt;/math&amp;gt; mit &amp;lt;math&amp;gt;0 &amp;lt; q &amp;lt; 1&amp;lt;/math&amp;gt; gilt &amp;lt;math&amp;gt;\textstyle\sum_{i \geqq 0}p_i = 1&amp;lt;/math&amp;gt;. Ein Binärbaum sei wie folgt rekursiv aufgebaut: Derjenige Schlüssel wird zu einem der beiden Söhne und zur Wurzel des nächsten Teilbaums gemacht, der das größte verbleibende Gewicht hat. Da es danach keinen Schlüssel auf seiner Seite mehr gibt, bleibt der andere Sohn leer. Ein solcher Binärbaum hat die konstante gewichtete Pfadlänge &amp;lt;math&amp;gt;\textstyle \sum_{i \geqq 0}(i+1)p_i = 1/(1-q)&amp;lt;/math&amp;gt;, obwohl er einer linearen Liste entspricht.&lt;br /&gt;
Passt nun die Anordnung der Schlüssel genau zu diesem Binärbaum (so dass er ein binärer &amp;#039;&amp;#039;Such&amp;#039;&amp;#039;baum ist), so ist er bei &amp;lt;math&amp;gt;q&amp;gt;\tfrac12&amp;lt;/math&amp;gt; optimal, denn ein Herabstufen der Wurzel eines Teilbaums verschlechtert den Mittelwert.&lt;br /&gt;
Es gibt dann also sehr seltene Suchanfragen, die beim optimalen gewichteten binären Suchbaum in nur linearer Zeit beantwortet werden.&lt;br /&gt;
&lt;br /&gt;
=== Natürliche Vokabulare ===&lt;br /&gt;
&lt;br /&gt;
Im Englischen ist die Wahrscheinlichkeit für das Vorkommen des &amp;lt;math&amp;gt;i&amp;lt;/math&amp;gt;-t häufigsten Wortes ungefähr&lt;br /&gt;
:&amp;lt;math&amp;gt;\alpha_i \approx i^{-1{,}12} / \sum_{i \geqq 1}i^{-1{,}12}&amp;lt;/math&amp;gt;.&lt;br /&gt;
Die gewichtete Pfadlänge eines optimalen binären Suchbaums für &amp;#039;&amp;#039;alle&amp;#039;&amp;#039; englischen Wörter ergibt sich zu ungefähr &amp;lt;math&amp;gt;10{,}2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Dynamische Gewichte ===&lt;br /&gt;
&lt;br /&gt;
Sind Einfüge- oder Entfernoperationen wichtig, so sind im Prinzip auch die Gewichte zu pflegen. Im Grenzfall sogar beim Aufsuchen, da sich hierbei zumindest die Zugriffsstatistik ändert.&lt;br /&gt;
&lt;br /&gt;
[[Kurt Mehlhorn|Mehlhorn]] beschreibt „Nahezu optimale binäre Suchbäume“.&lt;br /&gt;
&lt;br /&gt;
Bei den [[Splay-Baum|Splay-Bäumen]] werden trotz völlig anderer Vorgehensweise ebenfalls die am häufigsten angesprochenen Knoten in die Nähe der Wurzel gespült.&lt;br /&gt;
&lt;br /&gt;
== Zugriffsverteilung und gewichtete Pfadlänge ==&lt;br /&gt;
[[File:Binary search tree with weights +.svg|thumb|306px|Abb. 4: (Optimaler) binärer Suchbaum mit Gewichten (rot).]]&lt;br /&gt;
Sei &amp;lt;math&amp;gt; X := \left\{ x_1 &amp;lt; x_2 &amp;lt; ... &amp;lt; x_n \right\}&amp;lt;/math&amp;gt; eine Schlüsselmenge aus einem [[Totale Quasiordnung|total (quasi)geordneten]] Reservoir &amp;lt;math&amp;gt;R&amp;lt;/math&amp;gt; von Schlüsseln, seien ferner &amp;lt;math&amp;gt;p_i&amp;lt;/math&amp;gt; bzw. &amp;lt;math&amp;gt;q_j&amp;lt;/math&amp;gt; Häufigkeiten, mit denen auf das Element &amp;lt;math&amp;gt;x \in R&amp;lt;/math&amp;gt; (oder Äquivalenzklasse resp. Intervall) zugegriffen wird, wobei &amp;lt;math&amp;gt;x \in \overline{x_i}&amp;lt;/math&amp;gt; für &amp;lt;math&amp;gt;1 \leqq i \leqq n&amp;lt;/math&amp;gt; resp. &amp;lt;math&amp;gt;x_j &amp;lt; x &amp;lt; x_{j+1}&amp;lt;/math&amp;gt; für &amp;lt;math&amp;gt;0 \leqq j \leqq n&amp;lt;/math&amp;gt;. (Dabei seien &amp;lt;math&amp;gt;x_0 := -\infty&amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;x_{n+1} := +\infty&amp;lt;/math&amp;gt; zusätzliche nicht zu &amp;lt;math&amp;gt;R&amp;lt;/math&amp;gt; gehörende Elemente mit der üblichen Bedeutung.) Das &amp;lt;math&amp;gt; (2n+1)&amp;lt;/math&amp;gt;-[[Tupel]]&lt;br /&gt;
:&amp;lt;math&amp;gt;\mathfrak{z} := \left(\begin{smallmatrix}&lt;br /&gt;
 &amp;amp; p_1 &amp;amp;&amp;amp; p_2 &amp;amp;&amp;amp; \cdots &amp;amp;&amp;amp; p_n &amp;amp; \\&lt;br /&gt;
q_0 &amp;amp;&amp;amp; q_1 &amp;amp;&amp;amp; q_2 &amp;amp;&amp;amp; \cdots &amp;amp;&amp;amp; q_n &lt;br /&gt;
\end{smallmatrix}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
heißt &amp;#039;&amp;#039;&amp;#039;Zugriffsverteilung&amp;#039;&amp;#039;&amp;#039;&amp;lt;ref&amp;gt;nach [[#Mehlhorn]] a. a. O. S. 147&amp;lt;/ref&amp;gt; für die Menge &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt;, wenn alle &amp;lt;math&amp;gt;p_i, q_j \geqq 0&amp;lt;/math&amp;gt; sind. &amp;lt;math&amp;gt;\mathfrak{z}&amp;lt;/math&amp;gt; wird zur &amp;#039;&amp;#039;&amp;#039;Zugriffswahrscheinlichkeitsverteilung&amp;#039;&amp;#039;&amp;#039;, wenn &amp;lt;math&amp;gt;\textstyle \sum p_i + \sum q_j = 1&amp;lt;/math&amp;gt; ist.&lt;br /&gt;
&lt;br /&gt;
Sei nun &amp;lt;math&amp;gt; T&amp;lt;/math&amp;gt; ein Suchbaum für die Menge &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt; mit einer Zugriffsverteilung &amp;lt;math&amp;gt;\mathfrak{z}&amp;lt;/math&amp;gt;, ferner sei &amp;lt;math&amp;gt;a_i^T&amp;lt;/math&amp;gt; die [[Gewurzelter Baum#Weitere Begriffe|Tiefe]] des (inneren) Knotens &amp;lt;math&amp;gt; x_i&amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;b_j^T&amp;lt;/math&amp;gt; die Tiefe des Blattes &amp;lt;math&amp;gt;(x_j, x_{j+1})&amp;lt;/math&amp;gt; (s. Abb. 4; jeweils [[Binärer Suchbaum#Terminologie]] der Abb. 1B). Wir betrachten die Suche nach einem Element &amp;lt;math&amp;gt;x \in R&amp;lt;/math&amp;gt;. Wenn &amp;lt;math&amp;gt;x = x_i&amp;lt;/math&amp;gt;, dann vergleichen wir &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; mit &amp;lt;math&amp;gt;a_i^T+1&amp;lt;/math&amp;gt; Elementen im Baum. Wenn &amp;lt;math&amp;gt;x_j &amp;lt; x &amp;lt; x_{j+1}&amp;lt;/math&amp;gt;, dann vergleichen wir &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; mit &amp;lt;math&amp;gt;b_j^T&amp;lt;/math&amp;gt;Elementen im Baum. Also ist&lt;br /&gt;
:&amp;lt;math&amp;gt;S^T_{\mathfrak{z}} := \sum_{i=1}^n p_i (a_i^T+1) + \sum_{j=0}^n q_j b_j^T&amp;lt;/math&amp;gt;&lt;br /&gt;
die (mit der Zugriffsverteilung &amp;lt;math&amp;gt;\mathfrak{z}&amp;lt;/math&amp;gt;) &amp;#039;&amp;#039;&amp;#039;gewichtete Pfadlängensumme&amp;#039;&amp;#039;&amp;#039; des Baumes &amp;lt;math&amp;gt;T&amp;lt;/math&amp;gt;; ist &amp;lt;math&amp;gt;\mathfrak{z}&amp;lt;/math&amp;gt; eine Wahrscheinlichkeitsverteilung, dann ist &amp;lt;math&amp;gt;S^T_{\mathfrak{z}}&amp;lt;/math&amp;gt; die &amp;#039;&amp;#039;&amp;#039;gewichtete Pfadlänge&amp;#039;&amp;#039;&amp;#039;, die &amp;#039;&amp;#039;&amp;#039;gewichtete Suchtiefe&amp;#039;&amp;#039;&amp;#039; oder die mittlere Anzahl der benötigten Vergleiche. Die Abb. 4 zeigt einen Suchbaum &amp;lt;math&amp;gt;T&amp;lt;/math&amp;gt;, der mit einem Wert von &amp;lt;math&amp;gt;S^T_{\mathfrak{z}}=2&amp;lt;/math&amp;gt; optimal für die Zugriffsverteilung &amp;lt;math&amp;gt;\mathfrak{z} := \tfrac1{24} \left(\begin{smallmatrix}&lt;br /&gt;
 &amp;amp; 1 &amp;amp;&amp;amp; 3 &amp;amp;&amp;amp; 3 &amp;amp;&amp;amp; 0 &amp;amp; \\&lt;br /&gt;
4 &amp;amp;&amp;amp; 0 &amp;amp;&amp;amp; 0 &amp;amp;&amp;amp; 3 &amp;amp;&amp;amp; 10 &lt;br /&gt;
\end{smallmatrix}\right)&amp;lt;/math&amp;gt; ist.&lt;br /&gt;
&lt;br /&gt;
== Literatur ==&lt;br /&gt;
* {{Anker|Mehlhorn}}Kurt Mehlhorn: &amp;#039;&amp;#039;Datenstrukturen und effiziente Algorithmen.&amp;#039;&amp;#039; Teubner, Stuttgart 1988, ISBN 3-519-12255-3.&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Normdaten|TYP=s|GND=4157275-0|REMARK=Ansetzungsform GND: „Gewichteter Binärbaum“.}}&lt;br /&gt;
&lt;br /&gt;
{{DEFAULTSORT:Gewichteter Binarer Suchbaum}}&lt;br /&gt;
[[Kategorie:Suchbaum]]&lt;br /&gt;
&lt;br /&gt;
[[en:Binary search tree#Optimal binary search trees]]&lt;/div&gt;</summary>
		<author><name>imported&gt;DixMartin</name></author>
	</entry>
</feed>