网站大量收购独家精品文档,联系QQ:2885784924

数据结构队列的顺序表示和实现C语言演示.doc

数据结构队列的顺序表示和实现C语言演示.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构队列的顺序表示和实现C语言演示

/* 队列的顺序表示和实现 */ # include stdio.h # include malloc.h //定义机构体 typedef struct Queue { int * pBash; //存放数组 int front; //队列第一个元素下标 int rear; //队列最后一个元素的下一个元素的下标 }QUEUE,* PQUEUE; //函数的前置声明 void init(PQUEUE); //初始化队列 bool en_queue(PQUEUE,int); //入队 void traverse_queue(PQUEUE); //遍历队列 bool full_queue(PQUEUE); //判断队列是否已满 bool empty_queue(PQUEUE); //判断队列是否是空 bool out_queue(PQUEUE ,int *); //出队 int main(void) { QUEUE queue; int val; //初始化队列 init(queue); //入队一个元素 printf(入队6个元素\n); en_queue(queue,1); en_queue(queue,2); en_queue(queue,3); en_queue(queue,4); en_queue(queue,5); en_queue(queue,6); //遍历这个队列 printf(查看队列元素\n); traverse_queue(queue); //一个元素出队 if(out_queue(queue, val)) { printf(一个元素出队,值为%d\n,val); } else{ printf(出栈失败!); } //遍历这个队列 printf(查看队列元素\n); traverse_queue(queue); return 0; } //初始化队列 void init(PQUEUE queue) { queue - pBash = (int *)malloc(sizeof(int) * 6); queue - front = 0; queue - rear = 0; } //入队一个元素 bool en_queue(PQUEUE queue, int val) { //判断队列是否已满 if( full_queue(queue) ) { printf(队列已满,不能加入元素\n); return false; } /* 此处出现严重错误 原错误代码: queue - pBash[queue-front] = val; 这样做的结果是,所有进入队列元素,都会替换掉队首元素 正确的写法是: queue - pBash[queue-rear] = val; */ queue - pBash[queue-rear] = val; queue - rear = (queue - rear + 1)%6; return true; } //判断队列是否已满 bool full_queue(PQUEUE queue) { if( queue - front == (queue - rear + 1)%6) { return true; } else{ return false; } } //遍历这个队列 void traverse_queue(PQUEUE queue) { int i; i = queue-front; while(i != queue - rear) { printf(%d , queue-pBash[i]); i = (i+1)%6; } printf(\n); return; } //判断队列是否是空 bool empty_queue(PQUEUE queue)

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档