Queue队列
java.util.Queue(接口)
方法:
boolean add(E element)
boolean offer(E element) 如果队列没有满,将元素添加到队列尾部
E remove()
E poll() 如果队列不为空,删除并返回这个队列头部元素
E element()
E peek() 如果队列不为空,返回这个队列头部元素
Deque双端队列
java.util.Deque
理解:
接口Deque,是一个扩展自Queue的双端队列,它支持在两端插入和删除元素,Deque接口由ArrayDeque和LinkedList这两个类实现,所以通常我们可以使用LinkedList来创建一个队列。PriorityQueue类实现了一个优先队列,优先队列中元素被赋予优先级,拥有高优先级的先被删除。
ProrityQueue
java.util.ProrityQueue
理解:
优先级队列中的元素可以按任意顺序插入,却总是按照排序的顺序进行检索。优先级队列由堆实现。堆是一个可以自我调整的二叉树,对树执行添加和删除操作,可以让最小元素移动到根(最小堆),而不必花费时间对元素进行排序