一区二区三区电影_国产伦精品一区二区三区视频免费_亚洲欧美国产精品va在线观看_国产精品一二三四

聯(lián)系我們 - 廣告服務(wù) - 聯(lián)系電話:
您的當(dāng)前位置: > 關(guān)注 > > 正文

【天天熱聞】PriorityQueue(優(yōu)先隊(duì)列)是堆還是最小?PriorityQueue詳解

來源:CSDN 時間:2023-03-02 09:49:31

優(yōu)先隊(duì)列

PriorityQueue(優(yōu)先隊(duì)列)采用的是堆排序, 實(shí)際上是一個堆(不指定Comparator時默認(rèn)為最小堆) 隊(duì)列既可以根據(jù)元素的自然順序來排序,也可以根據(jù) Comparator來設(shè)置排序規(guī)則。 隊(duì)列的頭是按指定排序方式的最小元素。如果多個元素都是最小值,則頭是其中一個元素。 新建對象的時候可以指定一個初始容量,其容量會自動增加。


(資料圖片)

注意1:該隊(duì)列是用數(shù)組實(shí)現(xiàn),但是數(shù)組大小可以動態(tài)增加,容量無限。

注意2:隊(duì)列的實(shí)現(xiàn)不是同步的。不是線程安全的。如果多個線程中的任意線程從結(jié)構(gòu)上修改了列表, 則這些線程不應(yīng)同時訪問 PriorityQueue實(shí)例。保證線程安全可以使用PriorityBlockingQueue 類。

注意3:不允許使用 null 元素。

注意4:插入方法(offer()、poll()、remove() 、add() 方法)時間復(fù)雜度為O(log(n)) ;remove(Object) 和 contains(Object) 時間復(fù)雜度為O(n);檢索方法(peek、element 和 size)時間復(fù)雜度為常量。

注意5:方法iterator()中提供的迭代器并不保證以有序的方式遍歷優(yōu)先級隊(duì)列中的元素。(原因可參考PriorityQueue的內(nèi)部實(shí)現(xiàn))如果需要按順序遍歷,可用Arrays.sort(pq.toArray())。

注意6:可以在構(gòu)造函數(shù)中指定如何排序。如:PriorityQueue() 使用默認(rèn)的初始容量(11)創(chuàng)建一個 PriorityQueue,并根據(jù)其自然順序來排序其元素(使用Comparable)。 PriorityQueue(int initialCapacity) 使用指定的初始容量創(chuàng)建一個 PriorityQueue,并根據(jù)其自然順序來排序其元素(使用 Comparable)。 PriorityQueue(int initialCapacity, Comparator comparator) 使用指定的初始容量創(chuàng)建一個 PriorityQueue,并根據(jù)指定的比較器comparator來排序其元素。

注意7:此類及其迭代器實(shí)現(xiàn)了 Collection 和 Iterator 接口的所有可選 方法。

PriorityQueue對元素采用的是堆排序,頭是按指定排序方式的最小元素。堆排序只能保證根是最大(最小),整個堆并不是有序的。方法iterator()中提供的迭代器可能只是對整個數(shù)組的依次遍歷。也就只能保證數(shù)組的第一個元素是最小的。

因此使用方法提供iterator()的不保證是以有序的方式遍歷優(yōu)先級隊(duì)列的元素 示例:自己指定比較器進(jìn)行排序

@Testpublic void testPriorityQueue(){//默認(rèn)采用的是最小堆實(shí)現(xiàn)的    PriorityQueuequeue = new PriorityQueue(10,new Comparator(){public int compare(Integer a, Integer b){return a-b; //if a>b 則交換,so這是遞增序列        }    });    queue.offer(13);    queue.offer(9);    int len = queue.size();    for(int i=0;i<LEN;I++){System.out.println(queue.poll());    }    //輸出 9  13    //默認(rèn)采用的是最小堆實(shí)現(xiàn)的    PriorityQueuequeue2 = new PriorityQueue<>(10);    queue2.offer(11);    queue2.offer(9);    len = queue2.size();    for(int i=0;iSystem.out.println(queue2.poll());    }    //輸出 9, 11    }

完整例子:

public class PriorityQueueTest{public static void main(String args[]){PriorityQueuequeue = new PriorityQueue(11,                  new Comparator() {public int compare(People p1, People p2) {return p2.age - p1.age;                    }                  });                             for (int i = 1; i <= 10; i++) {queue.add(new People("張"+ i, (new Random().nextInt(100))));          }          while (!queue.isEmpty()) {System.out.println(queue.poll().toString());          }      }  }    class People {String name;      int age;      public People(String name, int age){this.name = name;          this.age = age;      }          public String toString() {return "姓名:"+name + " 年齡:" + age;      }  }

責(zé)任編輯:

標(biāo)簽:

相關(guān)推薦:

精彩放送:

新聞聚焦
Top 一区二区三区电影_国产伦精品一区二区三区视频免费_亚洲欧美国产精品va在线观看_国产精品一二三四
亚洲毛片av| 亚洲一级在线| 久久综合色婷婷| 一区二区三区毛片| 在线精品亚洲一区二区| 国产人久久人人人人爽| 欧美日韩国产色视频| 久久免费国产精品| 久久精品亚洲精品国产欧美kt∨| 一区二区三区四区在线| 在线观看日韩精品| 亚洲精品少妇30p| 国产欧美高清| 国产精品久久久久久久久久直播| 久久av在线看| 一区二区三区国产在线| 亚洲视频香蕉人妖| 亚洲视频久久| 久久国产精品高清| 99在线|亚洲一区二区| 国产午夜精品久久久久久免费视| 国产精品成人免费| 欧美女同在线视频| 欧美大尺度在线观看| 鲁大师影院一区二区三区| 欧美中文在线观看| 午夜精品福利在线| 欧美成人精品在线| 欧美视频福利| 1024成人网色www| 亚洲综合日本| 亚洲激情成人在线| 久久天天狠狠| 性久久久久久久| 久久狠狠婷婷| 狂野欧美激情性xxxx欧美| 亚洲国产成人av在线| 国产精品色在线| aa日韩免费精品视频一| 欧美激情在线观看| 国产精品日日摸夜夜添夜夜av| 亚洲精品午夜| 在线观看欧美视频| 久久久久久久一区二区| 今天的高清视频免费播放成人| 欧美亚洲综合另类| 国产亚洲一区二区三区在线观看 | 欧美激情一二三区| 夜夜嗨网站十八久久| 国产精品区免费视频| 亚洲欧美日韩综合一区| 一区二区三区在线免费视频 | 欧美激情aⅴ一区二区三区| 亚洲区中文字幕| 国产精品视频第一区| 久久精品国语| 亚洲综合99| 狠狠综合久久av一区二区小说 | 亚洲品质自拍| 国产精品资源| 欧美日韩另类综合| 久久中文字幕一区| 久久国产一二区| 香港成人在线视频| 一本久道久久综合狠狠爱| 国语自产偷拍精品视频偷 | 欧美另类在线观看| 亚洲精品国精品久久99热一 | 欧美多人爱爱视频网站| 免费成人在线观看视频| 在线一区二区三区四区| 亚洲精品激情| 亚洲福利小视频| 亚洲七七久久综合桃花剧情介绍| 久久香蕉国产线看观看网| 亚洲欧美中文日韩在线| 亚洲欧美综合v| 亚洲午夜久久久| 在线亚洲精品| 久久久精品999| 久久在线观看视频| 欧美成人精品高清在线播放| 国产精品尤物| 国产一区二区三区四区三区四| 国产精品高潮呻吟| 国产精品毛片| 精品av久久707| 午夜日韩av| 欧美大片一区| 国产乱人伦精品一区二区 | 亚洲欧洲99久久| 免费高清在线一区| 午夜在线观看欧美| 亚洲午夜在线| 18成人免费观看视频| 欧美视频在线免费看| 国产九九精品| 亚洲久久视频| 老司机67194精品线观看| 欧美日韩精品免费观看视频| 国产亚洲观看| 久久久久亚洲综合| 国产精品中文字幕在线观看| 亚洲精品视频在线播放| 午夜精品成人在线| 欧美区视频在线观看| 亚洲精品乱码久久久久久久久 | 国产精品日韩精品欧美在线| 亚洲电影免费观看高清完整版在线| 亚洲欧美在线看| 国产精品久久久久9999高清| 亚洲高清一区二| 久久久噜噜噜久噜久久| 国产精品私房写真福利视频| 永久久久久久| 欧美精品免费观看二区| 亚洲黄色三级| 欧美三区美女| 一本色道久久99精品综合| 欧美成人中文字幕| 亚洲电影欧美电影有声小说| 欧美精选一区| 另类成人小视频在线| av成人国产| 欧美体内she精视频在线观看| 欧美一区二区视频免费观看 | 欧美精品福利| 一本色道久久加勒比精品| 国产精品福利在线| 久久成人精品无人区| 亚洲国产日韩美| 国产精品一区二区久久| 免费看精品久久片| 欧美一区二区观看视频| 影音先锋另类| 欧美日韩免费一区| 久久国产精品一区二区| 亚洲欧洲日夜超级视频| 国产亚洲欧美一区| 欧美精品一区二| 久久精品视频va| 亚洲精品综合精品自拍| 一区二区三区在线免费视频| 欧美婷婷在线| 欧美成人国产va精品日本一级| 午夜精品视频在线观看一区二区| 91久久精品久久国产性色也91| 国产日本欧洲亚洲| 国产精品激情av在线播放| 麻豆成人综合网| 亚洲国产欧美日韩精品| 亚洲伦伦在线| 国产精品伦一区| 久久青草欧美一区二区三区| 欧美日韩精品欧美日韩精品| 一区二区欧美视频| 久久国产精品久久国产精品| 亚洲激情综合| 欧美成人国产一区二区| 亚洲影院色无极综合| 亚洲精品综合| 亚洲成人资源| 亚洲国产成人精品女人久久久| 91久久精品国产91久久性色tv| 亚洲电影在线看| 一本色道久久综合亚洲精品小说 | 日韩一级不卡| 亚洲一区二区视频| 欧美freesex8一10精品| 国产精品久久午夜| 国产综合色在线| 亚洲一区二区三区精品视频| 老司机精品视频一区二区三区| 国产精品久久影院| 日韩视频一区二区三区| 乱码第一页成人| …久久精品99久久香蕉国产| 欧美刺激性大交免费视频 | 久久免费精品日本久久中文字幕| 国产综合色产| 国内精品美女在线观看| 午夜欧美大片免费观看| 国产亚洲一区在线播放| 久久综合久久久久88| 夜夜狂射影院欧美极品| 国产精品wwwwww| 一本久久知道综合久久| 国产精品多人| 性色一区二区三区| 国产欧美一区二区色老头 | 日韩一本二本av| 欧美精品自拍偷拍动漫精品| 日韩一本二本av| 国产精品福利影院| 亚洲在线一区二区| 黄色日韩精品| 欧美黄色日本| 欧美一级片一区| 亚洲精品视频啊美女在线直播| 国产精品第一页第二页第三页|