IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 数据结构与算法 -> 数据结构学习(栈与队列:五(队的接口与实现)) -> 正文阅读

[数据结构与算法]数据结构学习(栈与队列:五(队的接口与实现))

队的接口与实现

与栈一样队也是一种存放数据对象的一种容器,且也是按线性的逻辑次序排列。队列结构同样支持对象的插入与删除,但这两种操作是被限制在队的两端,若约定对象只能从一段插入,则只能从另一端删除已有的元素。允许取出元素的一端被称为队头。允许插入的一端的元素被称作队尾
一般将元素的插入和删除操作分别称作入队出队

有以上的约定不难看出,与栈的结构恰好相反,队列中各元素的操作次序遵循所谓的先进先出(first-in-first-out,FIFO)。更早(晚)出队的元素应为更早(晚)入队者。

ADT接口:
既然队列可视作序列的特例,故可将队列视作列表的派生类:

template <typename T> class Queue : public List<T>
{//队列模板类(继承List原有接口)
	public: //size、empty以及其它开放接口均可直接沿用
		void enqueue(T const& e) {insertAsLast(e);}//入队:尾部插入
		T denqueue() {return remove(first());} //出队:首部删除
		T& front() {return first() -> data;}//队首
}

队的入队和出队操作都是队列表中一个元素进行插入和删除操作,所以复杂度均为常数。

  数据结构与算法 最新文章
【力扣106】 从中序与后续遍历序列构造二叉
leetcode 322 零钱兑换
哈希的应用:海量数据处理
动态规划|最短Hamilton路径
华为机试_HJ41 称砝码【中等】【menset】【
【C与数据结构】——寒假提高每日练习Day1
基础算法——堆排序
2023王道数据结构线性表--单链表课后习题部
LeetCode 之 反转链表的一部分
【题解】lintcode必刷50题<有效的括号序列
上一篇文章      下一篇文章      查看所有文章
加:2021-07-30 12:59:14  更:2021-07-30 13:00:40 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/3 18:42:52-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码