Co to jest drzewo rozrzutu?

Drzewo splay to zoptymalizowane drzewo wyszukiwania binarnego lub drzewo danych oparte na węzłach, które jest samodostosowujące się i zapewnia lepszy dostęp do ostatnio wyszukiwanych elementów i węzłów. W drzewie graficznym można wykonać pięć funkcji, które pozwalają użytkownikowi manipulować węzłami. To drzewo zajmuje bardzo mało miejsca, więc do przechowywania danych potrzeba niewiele pamięci. Wadą tego drzewa jest to, że jest zbudowane liniowo, więc dostęp do węzłów przechowywanych na dole będzie trwał dłużej.

Drzewa rozkładania to drzewa binarne, które przechowują węzły danych; są to zwykle dane binarne, chociaż mogą również przechowywać pliki. W przeciwieństwie do zwykłego drzewa wyszukiwania binarnego, które pozwala użytkownikom przeszukiwać węzły, drzewo splay porusza się, aby wyszukiwanie było znacznie szybsze. Wszelkie ostatnio otwarte węzły zostaną rozmieszczone w pobliżu wierzchołka drzewa, więc potrzeba mniej czasu na znalezienie i otwarcie węzła. Ta zmiana kolejności oznacza, że ​​drzewa rozmieszczane są przydatne w przypadku pamięci podręcznych — pamięci komputera, która przechowuje ostatnio używane dane — oraz algorytmów stworzonych w celu wyeliminowania nieużywanych danych.

Na drzewie można użyć pięciu funkcji. Operacja splay jest jak operacja złączenia, ponieważ dostęp jednego węzła zostaje połączony z innym węzłem. Funkcja split bierze jeden węzeł i dzieli go na dwa lub więcej węzłów. Przy łączeniu dwa węzły zamieniają się w jeden. Insert zajmuje część węzła i wstawia go do innego, podczas gdy funkcja usuwania usuwa część węzła z drzewa splay.

Drzewo splay zużywa bardzo mało pamięci, co pozwala użytkownikom tworzyć duże drzewa bez zajmowania ogromnej ilości miejsca na dysku twardym. Drzewa Splay są proste i nie wymagają dużo kodu do zbudowania, więc nie wymagają takiej samej ilości pamięci, jak bardziej złożone drzewa. Informacje księgowe, które zwykle są potrzebne innym drzewom do śledzenia pozycji danych, są niepotrzebne ze względu na samoorganizujący się charakter drzewa.

Chociaż drzewo splay zajmuje mało pamięci i może łatwo uzyskać dostęp do ostatnich węzłów, szybkość może być problemem. Węzły mogą być rozmieszczone tylko w sposób liniowy, co oznacza, że ​​niektóre węzły będą znajdować się nisko na drzewie, podczas gdy ostatnie węzły znajdują się na górze. Te dolne węzły będą trudne do osiągnięcia, ponieważ drzewo musi przeszukiwać od góry do dołu, aż do znalezienia dolnych węzłów. Dzieje się tak, ponieważ nie ma danych księgowych, co powoduje powolne wyszukiwanie niskich węzłów.