Temat 7 Flashcards
Temat 7: Struktura zbiorów rozłącznych
Jak wygląda struktura kopca Fibonacciego oraz jaką metodę amortyzacji kosztów najlepiej użyć?
Kopiec Fibonacciego ma formę lasu złożonego z kopców, gdzie stopień każdego węzła wynosi co najwyżej log n.
Metoda potencjału do analizy złożoności.
Jakie mamy metody dla kosztu zamortyzowanego?
Metoda Ksiegowania:
- Operacja ma koszt rzeczywisty oraz kredyt
- Koszt zamortyzowany operacji może być większy od rzeczywistego, co generuje kredyt
Metoda potencjału:
- Przypisuje się strukturze potencjał, który jest funkcją od stanu struktury
- Koszt zamortyzowany operacji to koszt rzeczywisty plus różnica potencjałów
Dlaczego zważając na stopień trudności i skomplikowania implementujemy kopiec Fibonacciego?
Ze względu na jego złożoność obliczeniową przy decrease-key(), przydaje sie to bardzo do algorytmu Dijkstry.
Gdzie stosujemy najczęściej strukturę zbiorów rozłącznych?
Algorytm Kruskala
Czym Disjont Set Data Structure/ Union Find?
Struktura do zarządzania zbiorami, które nie mają wspólnych elementów. Służy do śledzenia i zarządzania zbiorami elementów, które zmieniają się w wyniku łączenia (union)
Techniki optymalizacji dla struktur zbiorów rozłącznych
Kompresja Ścieżki;
Łączenie według Rangi;
Łączenie według Wielkości;
Główna różnica między kompresją ścieżki a łączeniem według rangi lub wielkości?
Przy kompresji ścieżki skracamy wysokość drzew, a dla łączenia minimalizujemy wzrost wysokości drzew, łącząc drzewa w określony sposób.
Na czym polega zasada konsolidacji dla kopca Fibonacciego?
Wszystkie drzewa o tym samym stopniu są scalane poprzez ich połączenie, dopóki nie pozostaną drzewa o unikalnych stopniach.