1、基本概念

普通的隊(duì)列是一種先進(jìn)先出的數(shù)據(jù)結(jié)構(gòu),元素在隊(duì)列尾追加,而從隊(duì)列頭刪除。在優(yōu)先隊(duì)列中,元素被賦予優(yōu)先級(jí)。當(dāng)訪問(wèn)元素時(shí),具有最高優(yōu)先級(jí)的元素最先刪除。優(yōu)先隊(duì)列具有最高級(jí)先出 (largest-in,first-out)的行為特征。(百度百科)

抽象數(shù)據(jù)類型:

優(yōu)先隊(duì)列的接口同前面講到的隊(duì)列的接口一樣,是其基于泛型的API接口代碼如下:

public interface Queue<E> {    //隊(duì)列是否為空
    boolean isEmpty();    //隊(duì)列的大小
    int size();    //入隊(duì)
    void enQueue(E element);    //出隊(duì)
    E deQueue();
}

2、基于數(shù)組實(shí)現(xiàn)的優(yōu)先隊(duì)列

實(shí)現(xiàn)優(yōu)先隊(duì)列最簡(jiǎn)的方法就是基于前面講到的基于數(shù)組的棧的代碼,只需對(duì)插入或刪除操作作相應(yīng)的更改即可。

網(wǎng)友評(píng)論