Skip to main content

Co to jest drzewo wyszukiwania?

Drzewo wyszukiwania to struktura danych używana w programowaniu komputerowym do zawierania i zorganizowania listy danych. Każde drzewo wyszukiwania składa się z uporządkowanego zestawu węzłów. Węzły te można podłączyć do zera lub więcejInne węzły. Poszczególne węzły zawierają niektóre dane, a także linki do innych węzłów. Dane zawarte w węzłach drzewa są bardzo często uporządkowane w jakiś sposób, aby umożliwić wydajne algorytmy na wyszukiwanie,Z łatwością wstaw i usuń węzły.

Węzły drzewa wyszukiwania są opisane z czterema ważnymi terminami. Góra drzewa, w którym znajduje się pierwszy węzeł, nazywa się korzeniem.Jeśli węzeł zawiera łącza do pod-nod, ten węzeł jest znany jako rodzic. Węzły, które znajdują się pod rodzicem, nazywane są dziećmi, a każdy węzeł, który nie ma węzłów dziecięcych, jestnazywany liściem. Tak więc węzeł korzeniowy jest identyfikowany, ponieważ nie ma rodzica, a węzły liści nie będą miały dzieci.

Program jest w stanie przejść przez drzewo wyszukiwanie danych, zaczynając od konkretnego węzła, wykonując kontrolę warunkową, a następnie przenosząc się do następnego węzła logicznego, jeśli wymagane dane nie są obecne. W zależności od struktury danychUżywane, to wyszukiwanie może zająć zmienną ilość czasu. Jeśli drzewo wyszukiwania jest zorganizowane podczas procesu dodawania i usuwania węzłów, wyszukiwanie może być bardzo szybkie. Gdy jest drzewozmontowane losowo, jest niepotrzebne lub pozwala wielu rodzicom, wyszukiwanie może potrwać bardzo długo.

Jednym z czynników wpływających na użycie drzew wyszukiwania jest kwestia równowagi.taki, w którym zarówno prawe, jak i lewe dzieci węzła korzeniowego zawierają albo tę samą głębokość węzłów dziecięcych, albo są w obrębie liczby jednego węzła.najniższy liść drzewa do korzenia. Niezrównoważone drzewo może mieć wszystkie węzły tylko po jednej stronie lub mieć wszystkie węzłyUłożony w sposób liniowy bez gałęzi. Gdy głębokość drzewa wzrasta, szybkość algorytmów wyszukiwania może dramatycznie zmniejszyć.

Istnieją pewne rodzaje drzew wyszukiwania, które są opisywane jako równoważenie.Drzewa te używają operacji, takich jak rotacja drzew, aby utrzymać równowagę, zachowując kolejność danych w liściach. Chociaż wykonywanie obrotów drzew może spowolnić program podczas dodawania i usuwania węzłów,przeciwdziała temu prędkość, z jaką można pobrać dane.do dwóch węzłów dziecięcych. Jest tylko jeden węzeł główny, a wszystkie liście w drzewie są uporządkowane od lewej do prawej w wartości rosnących zgodnie z przechowywanymi danymi.Istnieją algorytmy dla drzew wyszukiwania binarnych, które mogą ułatwić dane dotyczące zamówienia.

Nie ma pojedynczego standardu Implementacja węzłów drzewa wyszukiwania. Węzły mogą być reprezentowane przez wiele różnych struktur danych. Można użyć tablic tablic, jak można pomnożyć listy połączone. Często drzewo wyszukiwania używa niestandardowegoStruktura danych, która ma na celu ukończenie niezbędnych operacji wymaganych przez program. Niektóre standardowe biblioteki programowania zawierają nawet własne wewnętrzne implementacje drzew wyszukiwania.