|
|||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||
Drzewo – oznacza w teorii grafów graf, który jest acykliczny i spójny. Mówiąc językiem obrazowym, z każdego wierzchołka drzewa można dotrzeć do każdego innego wierzchołka (spójność) i tylko jednym sposobem (acykliczność, czyli brak możliwości chodzenia w "kółko").
edytuj Równoważne definicjeGraf prosty G jest drzewem jedynie, jeśli spełnia jeden z warunków:
edytuj Przykłady drzewedytuj TerminologiaDrzewo, w którym jest wyróżniony jeden z wierzchołków nazywamy drzewem ukorzenionym, a wyróżniony wierzchołek - korzeniem. Na takim drzewie możemy również określić relacje "rodzinne" pomiędzy wierzchołkami.
Wierzchołki, które nie mają synów nazywamy liśćmi drzewa. W informatyce bardzo często wymaga się, żeby synowie tworzyli nie zbiór, lecz listę uporządkowaną. Taki twór co prawda nie jest matematycznie grafem, jednak ma ogromne znaczenie w tej dziedzinie matematyki. Graf prosty, acykliczny i niespójny, który można traktować jako zbiór drzew, nazywa się lasem. Podstawowe operacje na drzewach to:
edytuj Zastosowanie drzewedytuj Diagramy zależnościW naturalny sposób reprezentują hierarchię danych (obiektów fizycznych i abstrakcyjnych, pojęć, itp.), zależności typu klient-serwer czy zbioru uporządkowanego (diagram Hassego). edytuj Struktury danychW informatyce wiele struktur danych jest konkretną realizacją drzewa matematycznego. Wierzchołki drzewa reprezentują konkretne dane (liczby, napisy albo bardziej złożone struktury danych). Odpowiednie ułożenie danych w drzewie może ułatwić i przyspieszyć ich wyszukiwanie. Znaczenie tych struktur jest bardzo duże i ze względu na swoje własności drzewa są stosowane praktycznie w każdej dziedzinie informatyki (np. algorytmika, kryptografia,bazy danych, grafika komputerowa, przetwarzanie tekstu, telekomunikacja). Specjalne znaczenie w informatyce mają drzewa binarne (liczba dzieci ograniczona do dwóch) i ich różne odmiany, np. drzewa AVL, drzewa czerwono-czarne, BST; drzewa które posiadają więcej niż dwoje dzieci są nazywane drzewami wyższych rzędów.
edytuj InneJako drzewa przedstawia się składnie języków formalnych, w tym rachunku lambda. W teorii gier występują drzewa decyzyjne. Bazy danych i systemy plików stosują wiele algorytmów opartych na drzewach i specjalnych postaciach drzew takich jak drzewa binarne, B drzewa, B+ drzewa, drzewa AVL i inne. edytuj Własności drzewW drzewie ukorzenionym istnieje dokładnie jedna ścieżka pomiędzy węzłem a korzeniem, na rys. przykładowa droga do węzła J jest zaznaczona na czerwono. Liczba krawędzi w ścieżce jest nazywana długością (lub głębokością) – liczba o jeden większa określa poziom węzła. Z kolei wysokość drzewa to największy poziom istniejący w drzewie (przykładowe drzewo ma wysokość 4). Liczba oznaczonych drzew o n wierzchołkach wynosi:
Formuła ta nosi nazwę wzoru Cayleya. Liczba drzew na zbiorze n-wierzchołków (gdzie n jest większe bądź równe 2), z których każdy ma stopień d1, d2, ..., dn, a suma stopni to 2n - 2, wynosi:
edytuj Zobacz też |
| All Right Reserved © 2007, Designed by Stylish Blog. |