标签: algorithm
任何人都可以想到一种算法,其中输入是大小为n的堆A和值Y,其中算法将返回A中所有> = Y的值。
条件是运行时间必须是O(k)(我们返回的元素数量)。
我不是在寻找代码,只是解决这个问题的一个想法的大致轮廓。例如,假设Heap是MAX堆,则数组将从最高到最小排序,在这种情况下,我可以遍历数组,直到A [i]<收率
我只能想到使用min / max堆的解决方案,如果堆不在任何一种情况下我都想不出任何解决方案。