1、栈

初始化:Stack<E> stack = new Stack<>();

出栈:stack.pop() 或 stack.remove(stack.size() - 1)

入栈:stack.push(2) 或 stack.add(1)

栈顶:stack.peek()

2、队列

初始化:Queue<E> queue = new LinkedList<>();

入队:queue.offer(2) 或 queue.add(3)

出队:queue.poll() 或 queue.remove()

查看队头元素:queue.peek()

3、双端队列

初始化:

//Deque<Integer> deque = new ArrayDeque<>();
Deque<Integer> deque1 = new LinkedList<>();

入队:

deque1.addFirst(1);
deque1.addLast(2);
deque1.offerFirst(3);
deque1.offerLast(4);

出队:

deque1.removeFirst()

deque1.removeLast()

deque1.pollFirst()

deque1.pollLast()

查看队头元素:

deque1.peekFirst()

deque1.peekLast()

4、测试

public static void main(String[] args) {
//System.out.println(isValid("([])"));
//testQueue();
testStack();
} public static void testDeque() {
//双端队列
Deque<Integer> deque = new ArrayDeque<>();
Deque<Integer> deque1 = new LinkedList<>();
//入队
deque1.addFirst(1);
deque1.addLast(2);
deque1.offerFirst(3);
deque1.offerLast(4);
System.out.println(deque1.peekFirst());
System.out.println(deque1.peekLast());
//出队
System.out.println(deque1.removeFirst());
System.out.println(deque1.removeLast());
System.out.println(deque1.pollFirst());
System.out.println(deque1.pollLast()); }
public static void testQueue() {
Queue<Integer> queue = new LinkedList<>();
queue.offer(1);
queue.offer(2);
queue.add(3);
System.out.println(queue.peek());
System.out.println(queue.poll());
System.out.println(queue.peek());
System.out.println(queue.remove());
System.out.println(queue.peek());
} public static void testStack() {
Stack<Integer> stack = new Stack<>();
stack.add(1);
stack.push(2);
stack.push(3);
System.out.println(stack.peek());
System.out.println(stack.pop());
System.out.println(stack.peek());
System.out.println(stack.remove(stack.size() - 1));
System.out.println(stack.peek());
}

最新文章

  1. [C#版本]有趣啊!各种编程语言实现 2 + 2 = 5
  2. UI第九节——UIStepper
  3. linux下配置nginx使用service nginx start 服务
  4. iOS (UIButton封装)仿糯米首页缩放“按钮”效果
  5. PAT1028—— 人口普查
  6. SQL延时操作
  7. Mac OS X开发者准备工作
  8. asp.net 如何引用dll
  9. 学习笔记:HTML+CSS 基础知识
  10. Find modern, interactive web-based charts for R at the htmlwidgets gallery
  11. 缩减APK包大小
  12. 第十二节,OpenCV学习(一)图像的读取、显示、保存
  13. 【DFS】n皇后问题
  14. vijos1448校门外的树
  15. ___security_cookie机制
  16. Python高级特性:迭代器和生成器 -转
  17. Css的向左浮动、先右浮动、绝对定位、相对定位的简单使用
  18. 微信小程序开发过程中出现问题及解答
  19. Eclipse下,修改MAVEN 中央仓库地址,解决maven下载慢问题
  20. 一道hive面试题:explode map字段

热门文章

  1. Docker目录/var/lib/docker/containers文件太大
  2. SpringBoot课程学习(二)
  3. Asp-Net-Core开发笔记:集成Hangfire实现异步任务队列和定时任务
  4. python解释器下载及注意事项
  5. 【编程学习】MATLAB
  6. Windows7下驱动开发与调试体系构建——2.R3与R0的通信示例
  7. 如何判断多个url的状态 即是否能成功访问?
  8. android学习 基础知识
  9. ThreadLocal的介绍与运用
  10. 关于Docker的一些事--Docker-Compose 升级版本