- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
二、顺序队列 3、循环队列的出队操作 ⑴ 操作: 若队列空,返回NULL (q-front== q-rear ) 队头指针加一 q-front=(q-front+1)%MAXSIZE 返回队头数据 q-queue[q-front] ⑵ 接口: 入口参数:队列指针q, 出口参数: 函数返回值:成功:数据元素;失败返回NULL 数据结构——栈和队列 二、顺序队列 (3)算法描述 数据结构——栈和队列 二、顺序队列 (4)函数实现 elemtype dlQueue(SeqQueue q) { if(q.front == q.rear ) return NULL; // 队列为空,返回NULL q.front = (q.front+1)%MAXSIZE;// 取队头元素 return q.queue[q.front]; } 数据结构——栈和队列 3.5 队列 三、链队列 链队列是用链表作队列的存储结构,当队列的容量无法预先估计时采用。在链队列中设一个头结点,头指针front始终指向头结点,尾指针rear指向队尾元素,当rear=front表时队空。 结点动态分配,不会溢出 链队列结点定义与单链表一样 数据结构——栈和队列 q data 指针 data 指针 data 指针 data 指针 front rear QS q data 指针 data 指针 data 指针 data 指针 front rear QS 三、链队列 1、结点结构定义: struct LNode{ elemtype data; // 数据域 LNode *next; // 指针域 }; 链队列结构定义: struct LinkQueue { LNode *front, *rear; // 队头、队尾指针 }; 数据结构——栈和队列 三、链队列 2、插入 int enQueue(LinkQueue q, elemtype x){ p = new LNode; //申请结点if(p) { p-data=x; p-next=NULL; q.rear-next=p; //插入 q.rear=p; //修改尾指针 return(TRUE); //成功}return(FALSE); //失败 } 数据结构——栈和队列 三、链队列 3、删除 void dlQueue(LinkQueue q, elemtype y) { LNode *s; if (q.front==q.rear) return(NULL);//队空s=q.front-next; //取得队头结点 y=s-data; //保存数据 q.front-next=s-next; //删除s delete s; //释放s if (q.front-next==NULL) //队已空 q.rear=q.front; } 数据结构——栈和队列 3.5 队列 四、队列的应用 任务调度 打印任务 多用户资源竞争问题 主机与外设速度不匹配问题 消息队列 排队模拟 数据结构——栈和队列 3.5 队列 五、小结 1、理解队列的概念和特点 2、理解队的假溢出现象 3、掌握循环队列判断空和满的条件 4、掌握进/出队列的算法 数据结构——栈和队列 栈 一、栈的定义 二、栈的运算 三、栈的存储结构及算法 四、栈的应用 数据结构——栈和队列 一、栈的定义 栈是限定只能在表的一端进行插入和删除操作的线性表。允许插入和删除的一端称为栈顶(top),另一端称为栈底(bottom)。 设栈s=(a1,a2,...,an),a1称为栈底元素,an称为栈顶元素。 栈中元素按a1,a2,...,an次序进栈,又按an,...,a2,a1次序退栈。因此栈的操作特点是:后进先出(LIFO);n=0时称为空栈。 数据结构——栈和队列 an a n-1 a1 stack[n-1] top 栈顶 进栈 stack[0] 栈底 出栈 二、栈的运算 1.初始化栈 INISTACK(S) 将栈S置成空栈 2.判空栈 ISEMPTY(S) 若栈S是空栈,返回“真”, 否则返回“假” 3.进栈 PUSH(S,x) 在栈S顶部插入(压入)元素x 4.出栈 POP(S) 若栈S不空,删除顶部元素 5.取栈顶 GETTOP(S) 取栈顶元素,并不改变栈中内容 数据结构——栈和队列 三、栈的存储结构及算法 1.顺序栈 1)类型定义 顺序栈用向量作为栈的存储结构,
您可能关注的文档
- 语文课程与教学改革的思考.pptx
- 兽药通GSP基本操作.ppt
- 书法艺术的文化意蕴.ppt
- 输电线路防雷技术.ppt
- 输入输出原理.ppt
- 暑期社会实践动员会.ppt
- 述职报告PPT模版.pptx
- 树立“成都服务”品牌打造核心竞争力.ppt
- 树立尽责意识规范执业行为.ppt
- 树立正确的人生目的和态度.ppt
- 养老评估师中级行为面试题库及案例分析.docx
- 面试培训督导时考察其课程理解能力的题目.docx
- 税务专员面试中关于增值税政策的常见问题解答.docx
- 2025宁波市医疗保障局局属事业单位宁波市医疗保障基金管理中心招聘事业编制工作人员1人备考试题附答案.docx
- 2025咸宁市汉口银行咸宁嘉鱼支行招聘笔试历年题库附答案解析.docx
- 2025北京人才发展战略研究院招录笔试备考题库附答案.docx
- 2025四川成都市龙泉驿区青台山中学校秋季教师招聘22人笔试试题附答案解析.docx
- 2025台州市银龄讲学计划教师招募13人笔试参考试题附答案解析.docx
- 2025中国铁建公开招聘42人笔试题库附答案.docx
- 2025中智咨询研究院社会招聘笔试参考题库附答案.docx
最近下载
- 第四版(2025)国际压力性损伤溃疡预防和治疗临床指南解读.docx VIP
- 变风量空调系统VAV系统.pptx VIP
- 救护教学管理课件PPT.pptx VIP
- 义务教育版(2024)三年级信息科技 第5课 美化处理图片 课件.pptx VIP
- 2025年高考语文备考之名著阅读《乡土中国》第六章《家族》内容概述及跟踪训练(含答案).pdf VIP
- 山姆食品安全“零容忍”政策小测试题及答案.docx VIP
- 陕西理工大学《数字信号处理》2023-2024学年第一学期期末试卷.doc VIP
- 218MC调试指导书.pdf
- 危废处置居间合同6篇.docx VIP
- 领导干部怎样做好廉洁自律表率与先锋.doc VIP
原创力文档


文档评论(0)