收藏 分享(赏)

数据结构 队列 Queue.ppt

上传人:gnk289057 文档编号:6484079 上传时间:2019-04-14 格式:PPT 页数:17 大小:1.35MB
下载 相关 举报
数据结构 队列 Queue.ppt_第1页
第1页 / 共17页
数据结构 队列 Queue.ppt_第2页
第2页 / 共17页
数据结构 队列 Queue.ppt_第3页
第3页 / 共17页
数据结构 队列 Queue.ppt_第4页
第4页 / 共17页
数据结构 队列 Queue.ppt_第5页
第5页 / 共17页
点击查看更多>>
资源描述

1、Joey.zhu,Queue,,主要内容,数据结构的概念队列的定义及应用队列的基本操作链队列和循环队列实现迷宫游戏inet_itoa引发的思考,数据结构的概念,数据结构(Data Structure)是数据的组织方式。程序中用到的数据都不是孤立的,而是有相互联系的,根据访问数据的需求不同,同样的数据可以有多种不同的组织方式。,数据的组织方式包含了存储方式和访问方式这两层意思,二者是紧密联系的。 例如,数组的各元素是一个挨一个存储的,并且每个元素的大小相同,因此数组可以提供按下标访问的方式,结构体的各成员也是一个挨一个存储的,但是每个成员的大小不同,所以只能用.运算符加成员名来访问,而不能按下标

2、访问。,一个问题中数据的存储方式和访问方式就决定了解决问题可以采用什么样的算法,要设计一个算法就要同时设计相应的数据结构来支持这种算法。 所以对于面向过程的程序设计: 算法+数据结构=程序,队列的定义,队列(Queue)是一种先进先出(FIFO)的线性表。 它只允许在表的一端进行插入,而在另一端删除元素。 允许插入元素的一端叫队尾(Rear), 允许删除元素的一端叫队头(Front)。 插入元素叫做入队,删除元素叫出队。,双端队列,双端队列队列的变种,双端队列是限定插入和删除操作在表的两端进行的线性表。,受限的双端队列 输出受限 输入受限,队列的应用,打印机 允许多道程序运行的操作系统的作业排

3、队 操作系统管理和分配系统资源 多进程下的管道通讯结构 操作系统中消息机制,队列是一种应用很广泛的数据结构,对于各种具有“先进先出”需要排队处理的问题,都可以应用队列来解决。,队列的基本操作,InitQueue(&Q) DestroyQueue(&Q) ClearQueue(&Q) QueueEmpty(&Q) QueueLength(&Q) GetHead(&Q,&e) EnQueue(&Q,&e) DeQueue(&Q,&e) QueueTraverse(&Q,visit(),构造空队列 销毁队列 清空队列 检测队列是否为空 获取队列长度 获取队头元素 插入元素 删除元素 队列中每个元素调

4、用visit(),链队列和循环队列,数据的存储方式 链式存储 链队列 顺序存储 顺序队列,循环队列,链队列长度可以不断变长,而顺序队列或循环队列都有最大长度的限制,顺序队列,循环队列,判断队列空间是空还是满可以有3种处理方法: 1.设置个标志位来区别队列空还是满 2.少用一个元素空间,约定以队列头指针在队列尾指针的下一位置上作为队列满的标志 3.记录队列中元素个数是否到限定的最大值,链队列,迷宫游戏,现在我们用队列解决一个有意思的问题 定义一个二维数组: int maze55 = 0, 1, 0, 0, 0,0, 1, 0, 1, 0,0, 0, 0, 0, 0,0, 1, 1, 1, 0,0

5、, 0, 0, 1, 0,;它表示一个迷宫,其中的1表示墙壁,0表示可以走的路,只能横着走或竖着走,不能斜着走,要求编程序找出从左上角到右下角的路线。,inet_itoa引发的思考,函数原型:char *inet_ntoa (struct in_addr);功能:讲整型的ip转成点分十进制的字符串,它这字符串存到哪去了? 我没有在形参中传地址进去啊,这不是要返回局部变量了吗?,看代码后发现,原来这个变量是声明成了static类型的,也就表示这个函数不可重入,inet_itoa引发的思考,Static声明的变量在C语言中有两方面的特征: 1)、变量会被放在程序的全局存储区中,这样可以在下一次调用的时候还可以保持原来的赋值。这一点是它与堆栈变量和堆变量的区别。 2)、变量用static告知编译器,自己仅仅在变量的作用范围内可见。这一点是它与全局变量的区别。,编译器如何区分同名的全局变量和静态局部变量的?,#include int data = 10; int main() static data = 5;printf(“%dn“,data);return 0; ,inet_itoa引发的思考,在函数内是编译器如何区别同名的全局变量和局部变量的?,使用 : 可以引用全局变量,可以我编译不过?,inet_itoa引发的思考,17,Thank you,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 网络科技 > 数据结构与算法

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报