ASD Ćwiczenia 8: Różnice pomiędzy wersjami
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
mNie podano opisu zmian |
mNie podano opisu zmian |
||
Linia 9: | Linia 9: | ||
Pokażemy, że drzewo AVL o wysokości <math>h</math> musi mieć rozmiar wykładniczy względem <math>h</math>, konstruując drzewo AVL <math>T_h</math> o wysokości <math>h</math> i najmniejszym możliwym rozmiarze. Jego definicja jest rekurencyjna: | Pokażemy, że drzewo AVL o wysokości <math>h</math> musi mieć rozmiar wykładniczy względem <math>h</math>, konstruując drzewo AVL <math>T_h</math> o wysokości <math>h</math> i najmniejszym możliwym rozmiarze. Jego definicja jest rekurencyjna: | ||
[[Grafika:Fib_tree.png]] | |||
Oznaczmy rozmiar drzewa <math>T_h</math> przez <math>a_h</math>. Mamy | Oznaczmy rozmiar drzewa <math>T_h</math> przez <math>a_h</math>. Mamy |
Wersja z 12:34, 23 sie 2006
Zadanie 1
Udowodnij, że wysokość drzewa AVL jest logarytmiczna względem jego rozmiaru.
Rozwiązanie
Zadanie 2
Oblicz, ile jest różnych drzew Fibonacciego o wysokości .
Rozwiązanie
Zadanie 3
Napisz pseudokod operacji Insert i Delete w drzewach AVL.
Zadanie 4
Udowodnij Lemat 1.
Rozwiązanie
Zadanie
Opisane tu operacje Insert i Delete dla B-drzew są dwuprzebiegowe: najpierw schodzimy od korzenia do liścia, a następnie wracamy w górę drzewa przywracając warunki równowagi. Zaprojektuj wymagające z grubsza o połowę odwołań do dysku mniej jednoprzebiegowe algorytmy wstawiania i usuwania kluczy z B-drzewa, w których przywracanie równowagi odbywa się od razu podczas marszu w dół drzewa.
Rozwiązanie