1.队列特点
- 队列是一种特殊的线性表,只能从头尾两端进行操作
- 队尾(rear):只能从队尾添加元素,一般叫做enQueue,入队
- 对头(front):只能从对头移除元素,一般叫做deQueue,出队
- 先进先出的原则:First In First Out, FIFO
2.队列的接口涉及
3.Java的 java.util.Queue
1.Java的队列是LinkedList实现的,而且LinkedList实现了Deque。所以可以将LinkedList当作双端队列来使用 。
- public class LinkedList
extends AbstractSequentialList implements List, Deque, Cloneable, java.io.Serializable
2.java.util.Queue是一个接口:
- 其中poll()方法:出队
- offer()和add()方法:入队。
在容量已满的情况下,add() 方法会抛出IllegalStateException异常,offer() 方法只会返回 false 。
4.双端队列
1.双端队列是能在头尾两端添加、删除的队列,英文deque是double ended queue的简称
2.接口设计
5.Java的 java.util.Deque
- Deque的底层是通过LinkedList来实现的,所以可以将LinkedList当作一个双端队列来使用
|