Usuwanie węzła ze środka sterty można wykonać w O (lg n), pod warunkiem, że możemy znaleźć element w stercie w stałym czasie. Załóżmy, że węzeł sterty zawiera id jako swoje pole. Teraz, jeśli podamy identyfikator, jak możemy usunąć węzeł w czasie O (lg n)?Usuwanie węzła ze środka sterty
Jednym z rozwiązań może być to, że możemy mieć adres lokalizacji w każdym węźle, gdzie utrzymujemy indeks węzła w stercie. Ta tablica byłaby uporządkowana według identyfikatorów węzła. Wymaga to jednak dodatkowej tablicy. Czy jest jakaś inna dobra metoda na osiągnięcie tego samego.
PS: Natknąłem się na ten problem podczas wdrażania algorytmu najkrótszej ścieżki Djikstry.
Tak, to jedno z rozwiązań. Myślę, że nie jest to możliwe bez użycia dodatkowej przestrzeni. dobrze? – Jonh