Queue和Deque
Queue和Deque
Queue
队列的使用:
在Java中,Queue是个接口,底层是通过链表实现的。
方法 | 功能 |
boolean add(E e) | 入队列(插入失败会抛出异常) |
boolean offer(E e) | 入队列 |
E remove( ) | 出队列(队列已经为空会抛出异常) |
E poll( ) | 出队列 |
element( ) | 获取对头元素(队列已经为空会抛出异常) |
peek( ) | 获取队头元素 |
int size( ) | 获取队列中有效元素个数 |
boolean isEmpty() | boolean isEmpty() |
注意:Queue是个接口,在实例化时必须实例化LinkedList的对象,因为LinkedList实现了Queue接口。
双端队列(Deque)
双端队列(deque)是指允许两端都可以进行入队和出队操作的队列,deque 是 “double ended queue” 的简称。 那就说明元素可以从队头出队和入队,也可以从队尾出队和入队。
双端队列既可以当做普通队列使用,也可以当做栈来使用。
Deque是一个接口,使用时必须创建LinkedList的对象。