JAVA Stack、Queue 用法笔记

本文深入探讨了栈和队列这两种基本数据结构的实现与应用。详细介绍了Java中Stack和Queue的API,包括它们的主要方法如push/pop、offer/poll等,以及如何使用这些方法进行数据的入栈/入队和出栈/出队操作。此外,还对比了Stack类与Queue接口的特性,为读者提供了丰富的代码示例。

总结。

1.栈和队列

StackQueue
APIjava.util.Stack;java.util.Queue; java.util.LinkedList;
定义Stack< Integer > stack = new Stack< Integer >();Queue< Integer > queue = new LinkedList< Integer >();
stack.push(node);queue .offer(node);
stack.pop();queue .poll();
顶/头stack.peek();queue .peek();
stack.empty();queue.isEmpty();

Stack类

Stack类继承自Vector类。

  1. boolean empty()
    判断栈是否为空
  2. E peek()
    返回栈顶对象,不移除
  3. E pop()
    返回栈顶对象,并移除
  4. E push(E item)
    压入栈顶
  5. int search(Object o)
    返回对象在栈的位置

Queue接口

常用的LinkedList类就实现了Queue接口。

  1. boolean add(E e)
    向队列中添加元素
  2. E element()
    返回队列的头,且不移除
  3. boolean offer(E e)
    向队列中添加元素
  4. E peek()
    返回队列的头,且不移除
  5. E poll()
    返回队列的头,且移除
  6. E remove()
    返回队列的头,且移除

add、element、remove会在操作失败时抛出异常,而offer、peek、poll在操作失败时返回特殊值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值