数据结构-队列
2017-06-15 21:34
204 查看
一.顺序队列SeqQueue
1.顺序队列结构类型的成员:ElemType * base 、int front、int rear、size_t capacity,分别是base指针,头位置,尾位置,容量。和顺序表操作大致一样,只不过队列只能尾部插入,头部删除,只能使用一次,没多大的实际意义。
2.顺序队列的结构类型表示
3.出栈只需front++;
4.清理和摧毁函数
二、链队列ListQueue
1.链队列和链表操作大致相同
2.链队列的结构类型:
3.链队列的操作和尾部插入数据,头部出数据。
三、循环队列Cycle Queue (重点)
循环队列中有 base指针,front头位置,rear尾位置,以及容量capacity
循环队列需要注意的是判空,判满,留一位不存数据,就可以很清楚地判断空还是满rear指针+1 == front指针,说明队列满了,头指针 == 尾指针,说明队列空的 让其循环起来利用模实现(%),让队列的头找它的尾部。
,
2.循环队列的结构类型表示
3.循环队列的重要函数
1初始化函数
2.入队函数
首先判断队不满 rear+1 != front, 尾部插入,把x插入到rear所指的空间 qu->base[qu->rear] = x; rear =(rear+1)%max_size;
3.出队函数
首先队不空,rear != front,再把front+1就行,但是要让循环就需要模max_size front = (front+1)%max_size
4.队列元素个数
定义一个count = 0用来计数;利用循环,让头去找它的尾,每循环一次计数加1,循环条件 front != rear ; front = (front+1)%max_size.
5.显示函数
6.清除和摧毁函数
清除只需让队列 头=尾;
1.顺序队列结构类型的成员:ElemType * base 、int front、int rear、size_t capacity,分别是base指针,头位置,尾位置,容量。和顺序表操作大致一样,只不过队列只能尾部插入,头部删除,只能使用一次,没多大的实际意义。
2.顺序队列的结构类型表示
3.出栈只需front++;
4.清理和摧毁函数
二、链队列ListQueue
1.链队列和链表操作大致相同
2.链队列的结构类型:
3.链队列的操作和尾部插入数据,头部出数据。
三、循环队列Cycle Queue (重点)
循环队列中有 base指针,front头位置,rear尾位置,以及容量capacity
循环队列需要注意的是判空,判满,留一位不存数据,就可以很清楚地判断空还是满rear指针+1 == front指针,说明队列满了,头指针 == 尾指针,说明队列空的 让其循环起来利用模实现(%),让队列的头找它的尾部。
,
2.循环队列的结构类型表示
3.循环队列的重要函数
1初始化函数
2.入队函数
首先判断队不满 rear+1 != front, 尾部插入,把x插入到rear所指的空间 qu->base[qu->rear] = x; rear =(rear+1)%max_size;
3.出队函数
首先队不空,rear != front,再把front+1就行,但是要让循环就需要模max_size front = (front+1)%max_size
4.队列元素个数
定义一个count = 0用来计数;利用循环,让头去找它的尾,每循环一次计数加1,循环条件 front != rear ; front = (front+1)%max_size.
5.显示函数
6.清除和摧毁函数
清除只需让队列 头=尾;
相关文章推荐
- 数据结构C语言实现—队列操作
- 第七周 数据结构实践——停车场模拟(栈和队列综合)【项目6 - 停车场模拟】
- 数据结构之队列(三)
- 数据结构学习 栈与队列(一)
- 数据结构6_顺序队列(循环队列)
- 简单数据结构之队列(C++模板库实现)
- 《数据结构》(C语言版)——循环队列――――队列的顺序存储结构
- [数据结构]队列之顺序队列的类模板实现
- 数据结构第二讲笔记之栈、队列(2)
- 2015年大二上-数据结构-队列(2)- 链队算法库
- 数据结构(Java)——队列的实现
- 数据结构:链表,栈堆,队列
- HDU 4286 Data Handler( 数据结构,双向队列,模拟)
- 【数据结构】第2周 栈与队列 2:栈的基本操作
- 2015年大二上-数据结构-队列(6)- 停车场模拟
- 数据结构学习笔记--栈、队列
- 数据结构和算法 (二)数据结构基础、线性表、栈和队列、数组和字符串
- 数据结构C语言实现系列——队列
- 数据结构--队列
- 数据结构:循环队列(C语言实现)