- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第三章 栈和队列 3.1 栈 栈的定义 栈的表示和实现 3.2 栈的应用举例 3.3 略 3.4 队列 3.5 略 栈的定义 顺序存储栈操作 链栈 例 指出下述程序段的功能是什么? 第三章 栈和队列 3.2 栈的应用举例 数制转换 括号匹配的检验 行编辑程序 迷宫求解 表达式求值(自己课下看) 3.2 栈的应用举例 3.2.1 数制转换 数制转换C++代码 3.2.2 括号匹配的检验 括号匹配检验C++代码 3.2.4 迷宫求解 移动方向 迷宫老鼠游戏软件的开发 第三章 栈和队列 3.4 队列 3.4.1 队列的ADT定义 3.4.2 链队列 3.4.3 循环队列 3.4 队列 本章小结 掌握栈和队列类型的特点,并能在相应的应用问题中正确选用它们。 熟练掌握栈类型的两种实现方法,特别应注意栈满和栈空的条件以及它们的描述方法。 熟练掌握循环队列和链队列的基本操作实现算法,特别注意队满和队空的描述方法。 作业3 在Unix/Linux 系统中用:Ctrl-D在Windows系统中用:Ctrl-Z 可以输入EOF,ALT?+?255?回车(必须用小键盘输) 3.2.4 迷宫求解 出口 设定当前位置的初值为入口位置; do{ 若当前位置可通, 则{将当前位置插入栈顶; 若该位置是出口位置,则算法结束; 否则切换当前位置的东邻方块为新的当前位置; } 否则, 若栈不空且栈顶位置尚有其他方向未被探索, 则设定新的当前位置为沿顺时针方向旋转找到的栈顶位置的下一相邻块; 若栈不空但栈顶位置的四周均不可通, 则{删去栈顶位置;// 从路径中删去该通道块 若栈不空,则重新测试新的栈顶位置, 直至找到一个可通的相邻块或出栈至栈空; } }while (栈不空); 求迷宫中一条从入口到出口的路径的算法: Sartaj Sahni著. 数据结构、算法与应用----C++语言描述. 机械工业出版社, 1999, p180. 根模块 欢迎模块 输入模块 寻找路径模块 输出模块 Welcome To Rat In A Maze Square mazes only. Please enter the number of rows. Enter –1 to exit. Press Enter when done. FindPath() 时间复杂性分析 在最坏的情况下,可能要遍历每一个空闲的位置,而每个位置进入堆栈的机会最多有四次(或八次,在讨论8个移动方向时)。对于每个位置,需花费O(1)的时间来检查它的相邻位置。因此时间复杂度为O(空闲位置数目)。 队列(Queue)也是一种运算受限的线性表。它只允许在表的一端进行插入,而在另一端进行删除。允许删除的一端称为队头(front),允许插入的一端称为队尾(rear)。 例如:排队购物。操作系统中的作业排队(打印)。先进入队列的成员总是先离开队列。因此队列亦称作先进先出(First In First Out)的线性表,简称FIFO表。 当队列中没有元素时称为空队列。在空队列中依次加入元素a1,a2,…an之后,a1是队头元素,an是队尾元素。显然退出队列的次序也只能是a1,a2,…an ,也就是说队列的修改是依先进先出的原则进行的。 出队 入队 队头 队尾 ADT Queue { 数据对象: D={ai | ai∈ElemSet, i=1,2,...,n, n≥0} 数据关系: R1={ a i-1,ai | ai-1, ai ∈D, i=2,...,n} 约定其中a1 端为队列头, an 端为队列尾 基本操作: } ADT Queue 3.4.1 队列的类型定义 InitQueue(Q) DestroyQueue(Q) QueueEmpty(Q) QueueLength(Q) GetHead(Q, e) ClearQueue(Q) DeQueue(Q, e) EnQueue(Q, e) QueueTravers(Q, visit()) 队列的基本操作: InitQueue(Q) 操作结果:构造一个空队列Q。DestroyQueue(Q)初始条件:队列Q已存在。 操作结果:队列Q被销毁, 不再存在。 QueueEmpty(Q)初始条件:队列Q已存在。 操作结果:若Q为空
您可能关注的文档
- 第三章 保险合同 课件要点.ppt
- 第三章 贝叶斯估计要点.ppt
- 第三章 变量之间的关系 回顾与思考要点.ppt
- 第三章 标准和农业标准的分类2015要点.ppt
- 第三章 财务分析课件要点.ppt
- 第三章 场效应管要点.ppt
- 第三章 城市广场的客体要素设计要点.ppt
- 第四章 齿轮加工机床要点.ppt
- 第四章 第1节 课件 人教必修1要点.ppt
- 第三章 城市交通规划要点.ppt
- 2025至2030中国移动治疗台行业发展研究与产业战略规划分析评估报告.docx
- 2025至2030链激酶行业细分市场及应用领域与趋势展望研究报告.docx
- 2025至2030爆炸物探测扫描仪行业市场占有率及有效策略与实施路径评估报告.docx
- 2025至2030四川省智能制造行业细分市场及应用领域与趋势展望研究报告.docx
- 2026届高三二轮复习试题政治大单元突破练1生产资料所有制与分配制度含解析.docx
- 2026届高三二轮复习试题政治大单元突破练16哲学基本思想与辩证唯物论含解析.docx
- 2026届高三二轮复习试题政治大单元突破练2社会主义市场经济体制含解析.docx
- 浙江省衢州市五校联盟2025-2026学年高二上学期期中联考技术试题-高中信息技术含解析.docx
- 浙江省金丽衢十二校2026届高三上学期11月联考政治试题含解析.docx
- 2026届高三二轮复习试题政治大单元突破练7领导力量:中国共产党的领导含解析.docx
最近下载
- DB23T 1496.22-2021 劳动防护用品配备 第22部分:种植业生产人员.docx VIP
- TCL海外员工管理.docx VIP
- 神经内科DRGs病案首页诊断栏和手术操作栏填写要求.pdf VIP
- GB T 28896-2023 金属材料 焊接接头准静态断裂韧度测定的试验方法(OCR).pdf VIP
- 高中信息技术校本教材《计算机及网络简介》.pdf VIP
- 牛津树阅读绘本(适合2-8岁小童)A present for Mum【有书】.pdf VIP
- 《电击伤急救护理教程》课件.ppt VIP
- 浙江省杭州市滨江区杭二统考2024-2025学年高二上学期语文期末考试卷(含答案).docx VIP
- 工程廉政风险点及其防控措施表完整.docx VIP
- 河海大学《高等数学》 2017-2018学年第一学期期末试卷B卷.pdf VIP
原创力文档


文档评论(0)