优先级队列(接收器操作)

时间:2016-12-20 06:18:01

标签: java priority-queue

我正在练习robert sedgwick的Algorithms book中的优先级队列主题。 在一个问题中,我们必须在sink()条件下实施j < N方法。

private void sink(int k){
    while (2*k <= N){
         int j = 2*k;
         if (j < N && less(j, j+1)) j++;
         if (!less(k, j)) break;
         exch(k, j);
         k = j;
    }
}

private boolean less(int i, int j){ 
    return pq[i].compareTo(pq[j]) < 0;
}

private void exch(int i, int j){ 
    Key t = pq[i]; 
    pq[i] = pq[j]; 
    pq[j] = t;
}

以上是Robert sedgwick的书中的代码检查页号。 329和问题编号2.4.13

0 个答案:

没有答案