ASD Ćwiczenia 8: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Amal (dyskusja | edycje)
mNie podano opisu zmian
Amal (dyskusja | edycje)
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:  


******* rysunek drzewa Fibonacciego ************************
[[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 h.

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