ArrayQueue
雙向無界隊列,最大亮點在於其頭節點並非一定是數組第0個元素,而是通過首尾指針來指定,即數組中任何一個位置都可能是頭結點。可以參考一下兩篇:
參考文獻
PriorityQueue
使用數組存儲元素,只能接受擁有比較器的元素。
數據結構爲小頂堆。插入節點時會與當前節點的父節點進行比較維持小頂堆的特性。彈出時直接彈出堆頂元素即可,彈出後將尾節點移到堆頂補位並逐個與子節點進行比較移位以維持小頂堆的特性。
參考文獻
雙向無界隊列,最大亮點在於其頭節點並非一定是數組第0個元素,而是通過首尾指針來指定,即數組中任何一個位置都可能是頭結點。可以參考一下兩篇:
參考文獻
使用數組存儲元素,只能接受擁有比較器的元素。
數據結構爲小頂堆。插入節點時會與當前節點的父節點進行比較維持小頂堆的特性。彈出時直接彈出堆頂元素即可,彈出後將尾節點移到堆頂補位並逐個與子節點進行比較移位以維持小頂堆的特性。
參考文獻
一、簡介 類定義: public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cloneable, Serial