国产chinesehd精品酒店,邱淑贞aa极毛片,国产在线色视频,玖玖爱zh综合伊人久久

網(wǎng)站首頁
手機(jī)版

java雙端隊列作用(java 雙向隊列)

更新時間:2023-01-31 00:19:09作者:未知

java雙端隊列作用(java 雙向隊列)

LinkedBlockingDeque概述

LinkedBlockingDeque是由鏈表構(gòu)成的界限可選的雙端阻塞隊列,支持O(1)的時間復(fù)雜度從兩端插入和移除元素,如不指定邊界,則為Integer.MAX_VALUE。

由一個ReentrantLock保證同步,使用conditions來實現(xiàn)等待通知。

linkLast

在last節(jié)點后加入節(jié)點node,更新last。如果插入之后超出容量,返回false。

private boolean linkLast(Node node) { // assert lock.isHeldByCurrentThread(); if (count >= capacity) return false; Node l = last; node.prev = l; last = node; if (first == null) first = node; else l.next = node; ++count; notEmpty.signal();// 滿足notEmpty條件 return true; }

unlinkFirst

移除first節(jié)點,并返回其item值,如果隊列為空,則返回full。

private E unlinkFirst() { // assert lock.isHeldByCurrentThread(); Node f = first; if (f == null) return null; Node n = f.next; E item = f.item; f.item = null; f.next = f; // help GC first = n; if (n == null) last = null; else n.prev = null; --count; notFull.signal();// 滿足notFull條件 return item; }

unlink

移除任意一個節(jié)點,注意這里并沒有操作x本身的連接,因為它可能仍被iterator使用著。

void unlink(Node x) { // assert lock.isHeldByCurrentThread(); Node p = x.prev; Node n = x.next; // 移除的是first if (p == null) { unlinkFirst(); // 移除的是last } else if (n == null) { unlinkLast(); } else { // 移除的是中間節(jié)點 p.next = n; n.prev = p; x.item = null; // Don't mess with x's links. They may still be in use by // an iterator. // 這里x的prev和next指針都沒有改變,因為他們可能在被iterator使用 --count; notFull.signal(); } }

總結(jié)

LinkedBlockingDeque是由鏈表構(gòu)成的界限可選的雙端阻塞隊列,支持O(1)的時間復(fù)雜度從兩端插入和移除元素,如不指定邊界,則為Integer.MAX_VALUE。

由一個ReentrantLock保證同步,使用conditions來實現(xiàn)等待通知。

上面介紹的所有操作基本上就是核心方法啦,諸如putFirst、putLast、takeFirst、takeLast等方法都會調(diào)用上面的核心方法,而且實現(xiàn)上面也是比較簡單的,就是雙端鏈表的基本操作,不懂的可以畫畫圖幫助理解哈。

以上就是本站?java雙端隊列作用(java三種隊列詳解)的相關(guān)內(nèi)容了,更多精彩請關(guān)注作者:萬年知識

聲明:本文由本站【創(chuàng)業(yè)者資源平臺】作者編輯發(fā)布,更多技術(shù)關(guān)注萬年技術(shù)!

本文標(biāo)簽: [db:關(guān)鍵詞]  

為您推薦

美國俄亥俄州發(fā)生嚴(yán)重氯乙烯泄露,(氯乙烯泄漏應(yīng)急處理)

美國俄亥俄州發(fā)生嚴(yán)重氯乙烯泄露, 網(wǎng)友質(zhì)疑為什么還在關(guān)注“氣球”?,美國,氣球,邁克,氯乙烯,蘭伯特,俄亥俄州

2023-02-14 10:09

3天3次擊落,美國在怕啥? 美國三天擊敗中國

3天3次擊落,美國在怕啥?,美軍,美國,氣球,飛艇,戰(zhàn)斗機(jī),f-22

2023-02-14 10:09

深挖 | “杉杉”創(chuàng)始人鄭永剛?cè)ナ?,留下四百億元市值與難以復(fù)刻的成功

深挖 | “杉杉”創(chuàng)始人鄭永剛?cè)ナ溃粝滤陌賰|元市值與難以復(fù)刻的成功,鄭永剛,董事局,杉杉股份,杉杉集團(tuán),上市公司

2023-02-14 10:08

俄烏沖突近一周年,北約彈藥庫存告急

俄烏沖突近一周年,北約彈藥庫存告急 ,俄烏沖突,彈藥,炮彈,斯托爾,北約,彈藥庫

2023-02-14 10:08

2023年寧波貴駟街道HPV疫苗預(yù)約指南 寧波市hpv疫苗預(yù)約

新年后首批九價HPV及四價HPV疫苗已少量送達(dá)貴駟街道社區(qū)衛(wèi)生服務(wù)中心接種門診,請需要接種的貴駟轄區(qū)居民有序進(jìn)行預(yù)約和接種,具體預(yù)約指南詳看正文。

2023-02-14 09:52

2023寧波貴駟街道HPV疫苗什么時候開始預(yù)約

新年后首批九價HPV及四價HPV疫苗到號寧波高新區(qū)貴駟街道社區(qū)衛(wèi)生服務(wù)中心,疫苗于2月14日下午14:30開始預(yù)約。

2023-02-14 09:50