1. 程式人生 > >優先順序佇列實現

優先順序佇列實現

優先佇列

不公平的佇列,效率較高

按順序入隊

插入 insert

  // 
  public void insert(long item) {
    int j;
    if (anInt == 0) {
      queArray[anInt++] = item;
    } else {
      for (j = anInt - 1; j >= 0; j--) {
        if (item > queArray[j]) {
          queArray[j + 1] = queArray[j];
        } else {
          break;
        }
      }
      queArray[j + 1] = item;
      anInt++;
    }
  }

移除

public long remove(){
  return queArray[--anInt];
}

列印最小值

public long peekMin(){
 return queArray[nItem-1];
}

是否為空

public boolean isEmpty(){
  return (nItems == 0);
}

是否佇列已滿

public boolean isFull(){
  return (nItems == maxSize)
}