java中的数据结构——队列

队列

与栈相似,队列也是顺序存储元素的线性数据结构,但队列是先进先出。
操作
插入:put,add,enque
删除:delete,get,deque 插入数据项的队尾:back,tail,end 移除数据项的队头:head
查看:peek,返回队头数据项的值,并不从队中删除这个项。
新建:new 队空移除,队满插入都会报错。 Enqueue,Dequue,isEmpty,top

队列的效率 和栈一样,队列中插入数据项和移除数据项的时间复杂度均为O(1)
双端队列 是 一 个 两 端 都 是 结 尾 的 队 列 , 队 列 的 每 一 端 都 可 以 插 入 数 据 项 和 移 除 数 据 项 , 方 法 有 inserLeft(),insertRight(),removeLeft(),removeRight(),虽然双端队列是一种多用途的数据结构,在 容器类库中有时会提供栈和队列两种功能,但是双端队列并不常用。

总结: 在栈,队列,优先级队列这些数据结构中,只有一个数据项可以被访问,栈允许访问最后一个插入数据 项,栈中重要的操作是在栈顶压入一个数据项和在栈顶移除一个数据项。队列只允许访问第一个插入的 数据项,队列的重要操作是在队尾插入数据项和在队头移除数据项。队列可以实现为循环队列,它基于 数组,数组下标可以从数组末端回绕到数组的开始位置。
优先级队列允许访问最小或最大的数据项,这 些数据结构可以用数组或者其他机制如链表来实现。

实战

使用队列表示栈的核心方法
在这里插入图片描述

上一篇:java中的数据结构——堆
下一篇:java中的数据结构——哈希表

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值