- 1、本文档共82页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构幻灯片第章
小 结 1设计递归算法的方法: (1) 寻找方法,将问题化为原问题的子问题求解 (例n!=n*(n-1)!)。 (2) 设计递归出口,确定递归终止条件 (例当n=1时,n! =1)。 2 调用三件事:传递本层参数、 返回地址; 分配局部变量空间;控制转移。 调用结束三件事:恢复上层;传递结果; 转断点执行。 3.3 栈与递归 3.4 队列 3.4 .1 队列的概念 3.4 .2 循环队列 ——队列的顺序存储和实现 3.4 .3 队列的链式存储和实现 3.4 队列 3.4.1 队列的概念 一 什么是队列 队列是限定仅能在表头进行删除,表尾进行插入的线性表 (a1, a2, ... , ai -1, ai , ai+1, …, an ) 插入 删除 3.4 队列 a1 a2 a3 an 入队列 队头 队尾 出队列 队 列 的 示 意 图 队列的特点 先进先出 第一个入队的元素在队头,最后一个入队的元素在队尾, 第一个出队的元素为队头元素, 最后一个出队的元素为队尾元素 3.4 队列 队列的基本操作 1)初始化操作 2)置空操作3)判空、满操作 4)取队头元素操作 5)入队操作 6)出队操作 3.4 队列 队列类型定义 #define MAXQSIZE 100 Typedef struct Sqqueue { QelemType *base; int front; int rear; } rear front J1 rear front J2 (a)空队列 (b)J1,J2相继入队列 (c)J1出队 (d)J3,J4, J5和J6相继入队之后,J2出队 rear front 0 1 2 3 4 5 3. 4 队列 rear front J5 J4 J3 front,rear为整数 又有J7入队, 怎么办? J2 J6 3. 4 队列 3. 4 . 2 循环队列 front rear J6 J4 J5 3 1 2 4 0 5 rear 5 4 0 3 1 2 front J6 J7 J8 J9 J4 J5 front rear 5 4 0 3 1 2 (b)队空 (a)队满 队空、队满 都是front=rear 如何判断循环队列 队空、队满? J7 rear 3. 4 队列 判分队空、队满有两种方法:1)另设一个标志位以区分队空、队满。2)少用一个存储单元,队满条件: front=(rear+1)% MAXQSIZE; 队空: front=rear 队列中元素的个数? (rear –front+ MAXQSIZE )% MAXQSIZE front 5 4 0 3 1 2 J6 J7 J8 J4 J5 (c) rear 3. 4 队列 循环队列的基本操作算法 P64-65 front rear 5 4 0 3 1 2 建一个空队列Q 3. 4 队列 入队操作 :将元素 x 插入队尾 front rear 5 4 0 3 1 2 J1 J3 J2 x front rear 5 4 0 3 1 2 J1 J3 J2 元素 x 入队前 元素 x 入队后 3. 4 队列 出队操作 :删除队头元素; front rear 5 4 0 3 1 2 J1 J3 J2 出队操作前 front rear 5 4 0 3 1 2 J1 J3 J2 出队操作后 3.4.3 链队列——队列的链式存储结构和实现 front rear ∧ 空链队列 a1 ∧ front rear a2 ∧ 链队列图示 3. 4 队列 3. 4 队列 二 链队列的类型定义 typedef struct Qnode {QelemType data; struct Qnode *next; } Qnode; QNODE *front, *rear; P61 3. 4 队列 链队列的基本操作 入队、出队算法 P62 3. 4 队列 三 队列的应用 1)解决计算机主机与外设不匹配的问题;2)解决由于多用户引起的资源竞争问题; 3)离散事件的模拟----模拟实际应
您可能关注的文档
- 数学:《抛物线的简单几何性质》幻灯片(新人教A版选修).ppt
- 数学:《直角三角形的射影定理》幻灯片(新人教版A选修).ppt
- 数学高考总复习重点精品幻灯片:《 集合与常用逻辑用语》幻灯片.ppt
- 数学:《算法案例进位制)》PPT幻灯片(新人教A版必修).ppt
- 数学:《直线与平面垂直的判定》幻灯片(新人教A版必修).ppt
- 数学:《算法案例进位制)》幻灯片(新人教A版必修).ppt
- 数学:《空间向量及其运算数量积》PPT幻灯片(新人教A版选修).ppt
- 数学:《集合的基本运算》幻灯片(新人教A版必修).ppt
- 数学:为什么是幻灯片(北师大版九级上).ppt
- 数学:与三角形有关的线段三角形高中线与角平分线幻灯片(人教新课标七级下).ppt
文档评论(0)