用堆实现求一个数组前k大值的函数maxk(A, k)

    • A : 数组

    • k : 最值数目 返回: 返回前k大的值

    答案:

    1. function maxk(A, k) {
    2. const heap = new MaxHeap(A)
    3. const r = []
    4. while(k-- > 0) {
    5. r.push(heap.extract())
    6. }
    7. return r
    8. }