下载此文档

循环队列.ppt


文档分类:IT计算机 | 页数:约43页 举报非法文档有奖
1/43
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/43 下载此文档
文档列表 文档介绍
2. 循环队列
队列的基本操作
循环队列
循环队列的类型定义: 
#define MAXSIZE 50 /*队列的最大长度*/
typedef struct
{
QueueElementType element[MAXSIZE]; /* 队列的元素空间*/
int front; /*头指针指示器*/
int rear ; /*尾指针指示器*/
}SeqQueue;
(1) 初始化操作。
void InitQueue(SeqQueue *Q)
{ /* 将*Q初始化为一个空的循环队列*/
Q->front=Q->rear=0;
}
(2) 入队操作。
int EnterQueue(SeqQueue *Q, QueueElementType x)
{ /*将元素x入队*/
if((Q->rear+1)%MAXSIZE==Q->front) /*队列已经满了*/
return(FALSE);
Q->element[Q->rear]=x;
Q->rear=(Q->rear+1)%MAXSIZE; /* 重新设置队尾指针*/
return(TRUE); /*操作成功*/
}
(3) 出队操作。
int DeleteQueue(SeqQueue *Q, QueueElementType *x)
{ /*删除队列的队头元素, 用x返回其值*/
if(Q->front==Q->rear) /*队列为空*/
return(FALSE);
*x=Q->element[Q->front];
Q->front=(Q->front+1)%MAXSIZE; /*重新设置队头指针*/
return(TRUE); /*操作成功*/
}
1. 打印杨辉三角
杨辉三角形
杨辉三角形元素入队顺序
(1) 第7行的第一个元素1入队。
element[rear]=1;
rear=(rear +1 )% MAXSIZE;
(2) 循环做以下操作, 产生第7行的中间5个元素并入队。
element[rear]=element[front]+element[(front+1) %MAXSIZE]; 
rear=(rear +1 )% MAXSIZE;
front=(front+1)%MAXSIZE;
(3) 第6行的最后一个元素1出队。
front=(front+1)%MAXSIZE;
(4) 第7行的最后一个元素1入队。
element[rear]=1;
rear=(rear +1 )% MAXSIZE;

循环队列 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数43
  • 收藏数0 收藏
  • 顶次数0
  • 上传人陈潇睡不醒
  • 文件大小489 KB
  • 时间2018-05-25
最近更新