Übungsblatt 7 für Analyse von Algorithmen 49.) Betrachten Sie Binäre Suchbäume mit N gespeicherten Daten. Sei PN,k die Wahrscheinlichkeit, daß die letzte Eintragung k Schritte benötigt. Zeigen Sie: 0 (a) cN −1 = P kPN,k (b) N PN,k = 2PN −1,k−1 + (N − 2)PN −1,k P (c) Sei PN (z) = k≥0 PN,k z k . Zeigen Sie PN (z) = Y 2z + j − 2 . j 2≤j≤N Hieraus bestimme man Erwartungswert und Varianz. 50.) Zur mittleren Pfadlänge in Binärbäumen (Catalanmodell): Man finde die Koeffizienten In (= eines Binärbaumes der Größe n) in der erzeugenden Funktion C(z) = P mittlere Pfadlänge 2n 1 n I B z , wobei B = . Die Funktion C(z) ist dabei (siehe Vorlesung) gegeben n n≥0 n n n+1 n durch √ 1 − 1 − 4z 1 0 (zB (z) − B(z)) , mit B(z) = . C(z) = 1 − 2zB(z) 2z Zeigen Sie weiters: X 2n 1 √ = zn . n 1 − 4z n≥0 51.) Mittlere interne Pfadlänge in Digitalen Suchbäumen. Wie bei Tries sind den Daten 0 − 1-Folgen zugeordnet. Wie bei binären Suchbäumen werden die Daten der Reihe nach als interne Knoten eingetragen, wobei man, falls ein Knoten schon besetzt ist, nach links (0) bzw. rechts (1) verzweigt, und dafür fortlaufend die Bits verwendet. (a) Man betrachte ein selbstgewähltes Beispiel mit 5 Daten und konstruiere den Digitalen Suchbaum. (b) Zeigen Sie für die mittlere Interne Pfadlänge An von Digitalen Suchbäumen mit n ≥ 1 Daten: n−1 X 1−n n − 1 An = n − 1 + 2 (Ak + An−1−k ) . k k=0 52.) Zur Pfadlänge in Tries: Lösen Sie die Funktionalgleichung z z L(z) = z(ez − 1) + 2e 2 L( ) 2 durch Iteration. Danach lesen Sie aus der Lösung die Koeffizienten ab und finden " n−1 # X 1 Ln = n 1− 1− k . 2 k≥0 53.) Analoge Vorgangsweise für die Anzahl der internen Knoten in Tries ausgehend von der Funktionalgleichung z z G(z) = ez − (1 + z) + 2e 2 G( ) . 2 54.) Zeigen Sie die Beziehungen " n−1 # X n X n k 1 (−1)k 1− 1− k = n k 2 1 − 21−k k=2 k≥0 und ( X k≥0 n n−1 ) X n 1 1 n k−1 k 2 1− 1− k . −n 1− k = (−1)k 1−k 2 2 k 1 − 2 k=2 55.) Fortsetzung von Bsp. 51.): (a) Sei A(z) = X n≥0 Zeige: An zn . n! z z 0 A (z) = zez + 2e 2 A( ) . 2 (b) Setze B(z) = e−z A(z). Zeige z 0 B (z) + B(z) = z + 2B( ) . 2 56.) Fortsetzung von Bsp. 55.): (a) Sei B(z) = X Bn n≥0 zn . n! Zeige: Bn = −(1 − 22−n )Bn−1 , bzw. n Bn = (−1) Qn−2 für n ≥ 3 Y 1 mit Qn = 1− j . 2 1≤j≤n (b) Daraus folgere man: n X n An = (−1)k Qk−2 . k k=2