【Java源碼解析第二篇】隊列

ArrayQueue

雙向無界隊列,最大亮點在於其頭節點並非一定是數組第0個元素,而是通過首尾指針來指定,即數組中任何一個位置都可能是頭結點。可以參考一下兩篇:
參考文獻

參考文獻

PriorityQueue

使用數組存儲元素,只能接受擁有比較器的元素。
數據結構爲小頂堆。插入節點時會與當前節點的父節點進行比較維持小頂堆的特性。彈出時直接彈出堆頂元素即可,彈出後將尾節點移到堆頂補位並逐個與子節點進行比較移位以維持小頂堆的特性。
參考文獻

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章