Miałem to pytanie podczas egzaminu i nie mogłem znaleźć szybkiej odpowiedzi.Usunięcie uporządkowanej sekwencji liczb z BST
Istnieje tablica A zawierająca niektóre uporządkowane liczby A = [1,3,6,9,11] i BST z numerami jako kluczem. Muszę zapewnić efektywny algorytm rekursywny, aby usunąć liczby w A z BST.
Problem, który mam, nie polega na usuwaniu węzłów, ale na tym, jak wykorzystać fakt, że tablica jest uporządkowana podczas usuwania węzłów.
Czy ktoś może mi pomóc z pewnymi wskazówkami?
http://en.wikipedia.org/wiki/Binary_search_tree#Deletion – quasiverse
istnieje rozwiązanie O (n + k). Dla drzew niezrównanych jest to najlepsze, co możesz osiągnąć, ponieważ musisz odczytywać wszystkie elementy w tablicy [O (k)], a usunięcie jednego elementu w niezbilansowanym BST to O (n) [usuń ostatni element w sieć] czy jesteś w tym zainteresowany? czy szukasz czegoś bardziej zoptymalizowanego pod kątem zrównoważonego BST? – amit
Dziękuję amit: Nie mam żadnych założeń na drzewie, więc muszę wziąć pod uwagę wszystkie przypadki. – JustB