Есть ли в очереди с целочисленным приоритетом, которая использует слов пробела со следующими операциями, все в наихудшем времени и без доступа к случайности:
createEmptyQueueв для некоторой константы с .insertв .deleteMinδ мин
Кроме того, после того как ключ был подвергнут воздействию a , все дальнейшие вставки имеют значение .> кdeleteMin
Связанных с работой:
«Быстрый локальный поиск и обновление в ограниченных вселенных» Бозе и др., Который работает быстрее, чем мне нужно, deleteMinно медленнее, чем мне нужно insert.
Бродник и др. «Очередь с наименьшим временем с постоянным приоритетом» , в которой используется экзотическая «память Иггдрасиля». Для целей этого вопроса меня интересуют более стандартные целочисленные модели оперативной памяти.
«Многопроцессная временная очередь» Бродника и Карлссона , которая ограничивает вставку элементами с ключами в , где - значение минимума ключ.k min
Обратите внимание, что это довольно просто с хеш-таблицей, но она использует амортизацию и случайность:
- Очереди - это пары хеш-таблицы ключей и копия минимального ключа.
insertдобавляет ключ в хеш-таблицу и обновляет минимальную копию ключа, если это необходимо.deleteMinищет минимальный ключ в хеш-таблице, а затем ищет следующий минимальный ключ, ища по .