Kolejka Brodala

W informatyce kolejka Brodala to struktura sterty / kolejki priorytetowej bardzo niskimi najgorszymi ograniczeniami czasowymi : do , znajdowania minimum, łączenia (połączenia dwóch kolejek i _ Są pierwszym wariantem hałdy, który osiągnął te granice bez uciekania się do amortyzacji kosztów operacyjnych. Kolejki Brodal zostały nazwane na cześć ich wynalazcy Gertha Støltinga Brodala .

Chociaż mają lepsze granice asymptotyczne niż inne struktury kolejek priorytetowych, są one, jak mówi sam Brodal, „dość skomplikowane” i „[nie] mają zastosowania w praktyce”. Brodal i Okasaki opisują trwałą ( czysto funkcjonalną ) wersję kolejek Brodal.

Podsumowanie czasów biegu

Oto złożoność czasowa różnych struktur danych sterty. Nazwy funkcji zakładają min-stertę. Znaczenie „ O ( f )” i „ Θ ( f )” można znaleźć w notacji Big O.

Operacja znajdź min usuń min wstawić klawisz zmniejszania stopić
Dwójkowy Θ (1) Θ (log n ) O (log n ) O (log n ) Θ ( n )
Lewicowy Θ (1) Θ (log n ) Θ (log n ) O (log n ) Θ (log n )
Dwumianowy Θ (1) Θ (log n ) Θ (1) Θ (log n ) O (log n )
Fibonacciego Θ (1) O (log n ) Θ (1) Θ (1) Θ (1)
Łączenie w pary Θ (1) O (log n ) Θ (1) o (log n ) Θ (1)
Brodal Θ (1) O (log n ) Θ (1) Θ (1) Θ (1)
Parowanie rang Θ (1) O (log n ) Θ (1) Θ (1) Θ (1)
Ścisłe Fibonacciego Θ (1) O (log n ) Θ (1) Θ (1) Θ (1)
2–3 sterty O (log n ) O (log n ) O (log n ) Θ (1) ?
  1. ^ ab . Gerth Stølting Brodal (1996) W najgorszym przypadku wydajne kolejki priorytetowe. proc. 7. Sympozjum ACM-SIAM na temat algorytmów dyskretnych, s. 52–58
  2. ^ Gerth Stølting Brodal i Chris Okasaki (1996). Optymalne czysto funkcjonalne kolejki priorytetowe . Dziennik programowania funkcjonalnego .
  3. ^ abcd Cormen , Thomas   H .; Leiserson, Charles E .; Rivest, Ronald L. (1990). Wprowadzenie do algorytmów (wyd. 1). MIT Press i McGraw-Hill. ISBN 0-262-03141-8 .
  4. Bibliografia Linki genialny.org . Źródło 2019-09-30 . zewnętrzne
  5. Bibliografia   _ _ Tarjan, Robert E. (lipiec 1987). „Handry Fibonacciego i ich zastosowania w ulepszonych algorytmach optymalizacji sieci” (PDF) . Dziennik Stowarzyszenia Maszyn Komputerowych . 34 (3): 596–615. CiteSeerX 10.1.1.309.8927 . doi : 10.1145/28869.28874 .
  6. ^    Iacono, John (2000), „Ulepszone górne granice parowania stosów”, Proc. 7. skandynawskie warsztaty z teorii algorytmów (PDF) , notatki z wykładów z informatyki, tom. 1851, Springer-Verlag, s. 63–77, arXiv : 1110.4428 , CiteSeerX 10.1.1.748.7812 , doi : 10.1007/3-540-44985-X_5 , ISBN 3-540-67690-2
  7. ^ Fredman, Michael Lawrence (lipiec 1999). „O wydajności stosów parowania i powiązanych struktur danych” (PDF) . Dziennik Stowarzyszenia Maszyn Komputerowych . 46 (4): 473–501. doi : 10.1145/320211.320214 .
  8. ^    Pettie, Seth (2005). W kierunku ostatecznej analizy stert parowania (PDF) . FOCS '05 Materiały z 46. dorocznego sympozjum IEEE na temat podstaw informatyki. s. 174–183. CiteSeerX 10.1.1.549.471 . doi : 10.1109/SFCS.2005.75 . ISBN 0-7695-2468-0 .
  9. ^ Brodal, Gerth S. (1996), „Wydajne kolejki priorytetowe w najgorszym przypadku” (PDF) , Proc. 7. doroczne sympozjum ACM-SIAM na temat algorytmów dyskretnych , s. 52–58
  10. ^   Goodrich, Michael T .; Tamassia, Roberto (2004). „7.3.6. Budowa sterty oddolnej”. Struktury danych i algorytmy w Javie (wyd. 3). s. 338–341. ISBN 0-471-46983-1 .
  11. ^ Haeupler, Bernhard; Sen, Siddhartha; Tarjan, Robert E. (listopad 2011). „Stosy parowania rang” (PDF) . SIAM J. Informatyka . 40 (6): 1463–1485. doi : 10.1137/100785351 .
  12. ^    Brodal, Gerth Stølting ; Lagogiannis, George; Tarjan, Robert E. (2012). Ścisłe stosy Fibonacciego (PDF) . Materiały z 44. sympozjum Teorii Informatyki - STOC '12. s. 1177–1184. CiteSeerX 10.1.1.233.1740 . doi : 10.1145/2213977.2214082 . ISBN 978-1-4503-1245-5 .
  13. ^ Takaoka, Tadao (1999), Teoria 2–3 hałd (PDF) , s. 12