Wpisany przez Michał Knasiecki,
16 sierpnia 2005 19:11
Drzewo jest bardziej skomplikowaną strukturą niż poprzednie. Dla każdego drzewa wyróżniony jest jeden, charakterystyczny element- korzeń. Korzeń jest jedynym elementem drzewa, który nie posiada elementów poprzednich. Dla każdego innego elementu określony jest dokładnie jeden element poprzedni. Dla każdego elementu oprócz ostatnich, tzw. liści istnieje co najmniej 1 element następny.
Jeżeli liczba następnych elementów wynosi nie więcej niż 2 to drzewo nazywamy binarnym, jeżeli natomiast liczba elementów wynosi dokładnie 2 to drzewo nazywamy pełnym drzewem binarnym.
Drzewo można zdefiniować, jako acykliczny graf.
Dla każdego drzewa można określić:
Dla każdego drzewa można określić:
- długość drogi u (głębokość) - liczba wierzchołków, przez które należy przejść od korzenia do wierzchołka u
- wysokość u - maksymalna liczba wierzchołków na drodze od u do pewnego liścia
- wysokość drzewa = głębokość = wysokość korzenia +1
- ścieżka z u do v - zbiór wierzchołków, przez które należy przejść z wierzchołka u do v
- droga - ścieżka skierowana
- stopień wierzchołka - liczba jego bezpośrednich następników
- stopień drzewa - maksymalny stopień wierzchołka
Implementacje
Autor | Język programowania | Komentarz | Otwórz | Pobierz | Ocena |
dariuszlewinski | Delphi/Pascal | drzewo czerwono-czarne | .pas | .pas | ***** / 2 |
Dominik Goździuk | Java | .java | .java | ***** / 5 | |
Jakub Konieczny | Python | .py | .py | ***** / 5 |
Poprawiony: 31 sierpnia 2012 11:05