赞
踩
双端队列(deque)是指允许两端都可以进行入队和出队操作的队列,其元素的逻辑结构仍是线性结构。将队列的两端分别称为前端和后端,两端都可以入队和出队。
LinkedList 类在列表的开头及结尾 get、remove 和 insert 元素提供了统一的命名方法。这些操作允许将链接列表用作堆栈、队列或双端队列 (deque)。
- public class Deque<T> {
-
- private LinkedList<T> linkedList=new LinkedList<>();
-
- //获取双端队列大小
- public int size(){
- return linkedList.size();
- }
-
- //头部入队
- public void enFront(T data){
- linkedList.add(data);
- }
- //尾部入队
- public void enRear(T data){
- linkedList.add(0,data);
- }
- //头部出队
- public T deFront(){
- return linkedList.remove(0);
- }
- //尾部出队
- public T deRear(){
- return linkedList.remove(linkedList.size()-1);
- }
- //头元素
- public T Front(){
- return linkedList.get(0);
- }
- //尾元素
- public T Rear(){
- return linkedList.get(linkedList.size()-1);
- }
- //清空队列
- public void clear(){
- linkedList.clear();
- }
-
- @Override
- public String toString() {
- return "Deque{" + "linkedList=" + linkedList + '}';
- }
- }
测试结果
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。