Я работаю над заданием для одного из своих курсов, и один вопрос требует показать, что операция уменьшения ключа для кучи сопряжения занимает O (1) времени.
Очевидно, что если у вас есть указатель на ключ, который вы хотите уменьшить, то операция займет время O(1) (просто удалите ссылку, измените значение ключа, затем объедините).
Однако нигде в задании не сказано, что нам дан указатель на ключ. Если нам не дан указатель, то ключ уменьшения не может занять O(1) времени (вам придется сначала искать ключ в куче, а это не занимает постоянное время). Я посмотрел литературу, и все говорят, что клавиша уменьшения занимает O (logn) времени.
Я что-то упустил здесь?