1 / 10
文档名称:

队列的存储与操作.doc

格式:doc   大小:172KB   页数:10
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

队列的存储与操作.doc

上传人:相惜 2020/1/15 文件大小:172 KB

下载得到文件列表

队列的存储与操作.doc

相关文档

文档介绍

文档介绍:成绩评阅人重庆邮电大学课程设计实验报告班级:1301416姓名:陈昊学号:2014214156指导老师:夏晨洋课程名称:数据结构实验时间:2015年10月26日-2015年11月2日实验地点:数字图书馆负一楼B132实验四队列的存储与操作一、;,掌握队列的存储分配要点;,深刻领会队列操作的先进先出特征,并能正确分析其时间复杂度,知道队列性能优于普通线性表,以及队列的常用情形。二、主要数据结构描述classCirQueue{public:CirQueue();//构造函数,置空队~CirQueue();//析构函数voidEnQueue(Tx);//将元素x入队TDeQueue();//将队头元素出队TGetQueue();//取队头元素(并不删除)boolEmpty();//判断队列是否为空private:Tdata[QueueSize];//存放队列元素的数组intfront,rear;//队头和队尾指针,分别指向队头元素的前一个位置和队尾元素的位置}; 在循环队列这个数据结构中,需要一个构造函数,来创建一个空的队列;需要一个析构函数来删除队列;需要一个EnQueue()函数来插入一个数据;需要一个DeQueue()函数来将队头的元素出队;需要一个DeQueue()函数来输出队头的值;需要一个布尔型的函数来判断队列是否为空。三、:令头指针和尾指针均为零。:空的析构函数。:函数的形参为将存入队列的数据的值。因为判空和判满都需要用到rear==front,所以在判满的操作中,对rear+1取模,在循环的意义下进行判断。如果(rear+1)%QueueSize==front,那么队满。如果没有队满,那么就在循环+1下标的位置存入当前数据。:这里的出队不是删除相应的数据,而是将队头指针+1。首先判断队是否为空,如果不为空就将队头指针在循环意义上+1。:将队头元素的值取出。:如果rear==front则为空,否则不为空。因为不涉及循环,所以所有函数的时间复杂度都为O(1)。运行的结果截图实验体会和收获经过本次试验。我对循环队列有了更深的理解。了解了队列先进先出的特点。知道了如何运用队列解决相应的问题。六、程序清单。.