1、基本概念
普通的隊列是一種先進先出的數(shù)據(jù)結(jié)構(gòu),元素在隊列尾追加,而從隊列頭刪除。在優(yōu)先隊列中,元素被賦予優(yōu)先級。當(dāng)訪問元素時,具有最高優(yōu)先級的元素最先刪除。優(yōu)先隊列具有最高級先出 (largest-in,first-out)的行為特征。(百度百科)
抽象數(shù)據(jù)類型:
優(yōu)先隊列的接口同前面講到的隊列的接口一樣,是其基于泛型的API接口代碼如下:
public interface Queue<E> { //隊列是否為空 boolean isEmpty(); //隊列的大小 int size(); //入隊 void enQueue(E element); //出隊 E deQueue(); }
2、基于數(shù)組實現(xiàn)的優(yōu)先隊列
實現(xiàn)優(yōu)先隊列最簡的方法就是基于前面講到的基于數(shù)組的棧的代碼,只需對插入或刪除操作作相應(yīng)的更改即可。