В информатика, очередь Бродала - это структура куча / очередь приоритета с очень низким худшим случаем временем границы : для вставки, минимального поиска, объединения (слияние двух очередей) и клавиши уменьшения и для минимального удаления и общего удаления. Это первый кучный вариант, позволяющий достичь этих пределов, не прибегая к амортизации эксплуатационных расходов. Очереди Бродала названы в честь их изобретателя Герта Стёльтинга Бродала.
Имея лучшие асимптотические границы, чем другие структуры приоритетных очередей, они, по словам самого Бродала, «довольно сложны» и «[не] применимы на практике. " Бродал и Окасаки описывают постоянную (чисто функциональную ) версию очередей Бродала.
Здесь временные сложности различных структур данных кучи. Имена функций предполагают минимальную кучу. Значение «O (f)» и «Θ (f)» см. В нотации Big O.
Operation | find-min | delete-min | вставить | кнопка уменьшения | объединить |
---|---|---|---|---|---|
двоичный | Θ (1) | Θ (log n) | O (log n) | O (log n) | Θ (n) |
Левый | Θ (1) | Θ (log n) | Θ (log n) | O (log n) | Θ (log n) |
Биномиальный | Θ (1) | Θ (log n) | Θ(1) | Θ (log n) | O (log n) |
Фибоначчи | Θ (1) | O (log n) | Θ (1) | Θ(1) | Θ (1) |
Сопряжение | Θ (1) | O (журнал n) | Θ (1) | o (журнал n) | Θ (1) |
Brodal | Θ (1) | O (журнал n) | Θ (1) | Θ (1) | Θ (1) |
Θ (1) | O (log n) | Θ (1) | Θ(1) | Θ (1) | |
Строгий Фибоначчи | Θ (1) | O (журнал n) | Θ (1) | Θ (1) | Θ (1) |
2-3 куча | O (log n) | O (log n) | O (log n) | Θ (1) | ? |
.