我们如何在某个值之后在优先级队列中添加一个元素?

How do we add an element in a priority queue after a certain value?

我了解优先级队列的基础知识,我想知道我们是否可以在优先级队列中添加一个元素但在某个值之后,例如:- 我的数组是 2、5、7、11。 我想添加 4,但在 5 之后,最终数组为: 2、5、4、7、11。 还有其他方法可以在 O(logn) 时间内完成吗?

Is there any other way to do it in O(logn) time?

无法插入到对数复杂度的数组的任意位置。

可以将一个值插入数组,并移动元素,使堆 属性 保持对数复杂度,但这不一定会产生您在这里期望的最终数组.