Wstawianie i wyszukiwanie kluczy w tablicach i drzewach binarnych Tablice nieposortowane Tablice posortowane Drzewa poszukiwań binarnych Drzewa czerwono czarne
Tablice nieposortowane wstawianie 1 10 7 3 18 12 9 20
Tablice nieposortowane wyszukiwanie Szukamy liczby 9: 1 10 7 3 18 12 9 20
Tablice nieposortowane Wstawianie jest natychmiastowe Znalezienie klucza może wymagać przejrzenia wszystkich elementów tablicy Potrzebujemy czegoś lepszego
Tablice posortowane wyszukiwanie = bisekcja Szukamy liczby 10: 0 1 3 7 9 10 12 18 20
Tablice posortowane wstawianie = przesuwanie bloków 3 7 9 10 12 18 20
Tablice posortowane wstawianie = przesuwanie bloków 1 3 7 9 10 12 18 20
Tablice posortowane Szybkie wyszukiwanie kluczy Wstawienie może wymagać przesunięcia wszystkich elementów Potrzebujemy czegoś lepszego
Drzewa poszukiwań binarnych wstawianie 10 12 3 11 20 7 1 9 18
Drzewa poszukiwań binarnych wyszukiwanie Szukamy liczby 9 10 12 3 11 20 7 1 9 18
Drzewa poszukiwań binarnych bywają bardzo niezrównoważone 1 3 7 9 10 11 12 18 20
Drzewa poszukiwań binarnych Czas wyszukiwania i wstawiania zależy długości gałęzi drzewa Jeśli kolejność wstawiania jest przypadkowa możemy otrzymać krótkie gałezie Wstawiając w kolejności rosnącej otrzymujemy jedną długą gałąź Potrzebujemy czegoś lepszego
Drzewa czerwono-czarne definicja Są to drzewa poszukiwań binarnych Każdy węzeł jest czerwony lub czarny Korzeń jest czarny Czerwony węzeł ma zawsze czarnego ojca Ilość czarnych węzłów na dowolnej ścieżce korzeń-NULL jest taka sama
Drzewa czerwono-czarne przykłady 10 20
Drzewa czerwono-czarne przykłady 10 5 20 31 2 15 12
Drzewa czerwono-czarne przykłady 10 20 5 15 31 7 2 17 35 28 12 1 11 13 32 39
Drzewa czerwono-czarne rotacje 10 20 Alfa Beta Gamma
Drzewa czerwono-czarne rotacje 20 10 Alfa Beta Gamma
Drzewa czerwono-czarne przekolorowania 20 30 10
Drzewa czerwono-czarne przekolorowania 20 30 10
Drzewa czerwono-czarne
Drzewa czerwono-czarne 1 Robimy rotację 3 Źle 10
Drzewa czerwono-czarne 3 10 1
Drzewa czerwono-czarne Robimy przekolorowanie 3 10 1 9 źle
Drzewa czerwono-czarne 3 Korzeń musi być czarny Więc go przemalujmy 10 1 9
Drzewa czerwono-czarne 3 Robimy przekolorowanie 10 1 Źle 12 9 18
Drzewa czerwono-czarne 3 10 1 12 9 Robimy rotację 18 Źle 19
Drzewa czerwono-czarne 3 10 1 Robimy przekolorowanie 9 18 19 12 Źle 20
Drzewa czerwono-czarne 3 Robimy rotację 10 1 Źle 9 18 19 12 20
Drzewa czerwono-czarne 10 3 18 19 1 9 12 20
Drzewa czerwono czarne Są to drzewa poszukiwań binarnych, które same się równoważą Nie powstają długie gałęzie Wyszukiwanie i wstawianie jest szybkie To jest to!