Я использую очередь приоритетов, которая изначально основывает приоритет своих элементов на эвристике. По мере удаления элементов эвристика обновляется, и у элементов, находящихся в данный момент в очереди, могут быть увеличены ключи.
Я знаю, что есть кучи (особенно кучи Фибоначчи), которые амортизируют O (1), уменьшают ключевые операции, но есть ли структуры кучи, которые имеют аналогичные границы для операций увеличения ключа?
Для моего приложения это далеко не проблема производительности (двоичная куча работает нормально), это просто академическое любопытство.
Редактировать: чтобы уточнить, я ищу структуру данных, которая имеет более быстрое, чем O (logn) время для операции увеличение ключа , а не уменьшение ключа. Мое приложение никогда не уменьшает ключ, так как эвристика переоценивает приоритет.