当前位置:   article > 正文

Java双端队列_java定义双端队列

java定义双端队列

概念

双端队列(deque)是指允许两端都可以进行入队和出队操作的队列,其元素的逻辑结构仍是线性结构。将队列的两端分别称为前端和后端,两端都可以入队和出队。

示意图

LinkedList 类在列表的开头及结尾 get、remove 和 insert 元素提供了统一的命名方法。这些操作允许将链接列表用作堆栈、队列或双端队列 (deque)。

具体实现 

  1. public class Deque<T> {
  2. private LinkedList<T> linkedList=new LinkedList<>();
  3. //获取双端队列大小
  4. public int size(){
  5. return linkedList.size();
  6. }
  7. //头部入队
  8. public void enFront(T data){
  9. linkedList.add(data);
  10. }
  11. //尾部入队
  12. public void enRear(T data){
  13. linkedList.add(0,data);
  14. }
  15. //头部出队
  16. public T deFront(){
  17. return linkedList.remove(0);
  18. }
  19. //尾部出队
  20. public T deRear(){
  21. return linkedList.remove(linkedList.size()-1);
  22. }
  23. //头元素
  24. public T Front(){
  25. return linkedList.get(0);
  26. }
  27. //尾元素
  28. public T Rear(){
  29. return linkedList.get(linkedList.size()-1);
  30. }
  31. //清空队列
  32. public void clear(){
  33. linkedList.clear();
  34. }
  35. @Override
  36. public String toString() {
  37. return "Deque{" + "linkedList=" + linkedList + '}';
  38. }
  39. }

 测试结果

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/78804
推荐阅读
相关标签
  

闽ICP备14008679号