Есть ли в Haskell очередь кучи/приоритета Фибоначчи? (Или даже асимптотически лучше?) Я нашел список различных реализаций очереди приоритетов в этом вопросе, но я не мог найти, удовлетворяет ли какой-либо из них амортизационный ход время кучи Фибоначчи:
- Найти-минимум - это O (1) амортизированное время.
- Операция insert, reduce key и merge (union) - это O (1) амортизированное время.
- Меры по удалению и удалению операций - это время ожидания O (log n).