欢迎来到天天文库
浏览记录
ID:14129327
大小:63.00 KB
页数:4页
时间:2018-07-26
《实验三 栈和队列(队列)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验三栈和队列的算法实现(队列)一、实验目的1.掌握队列这种数据结构特性及其主要存储结构。2.掌握队列的基本操作算法。二.实验指导(1)程序的三部分构架:1、常量定义(#define),类型定义(typedef)及函数原型定义(#include);2、算法函数,即init_Q、EnQueue、DeQueue和out_Q等3、主函数。(2)队列的顺序存储结构typedefstruct{ElemTypea[MAXSIZE];/*一维数组子域*/intfront,rear;/*头、尾指针子域*/}SqQ
2、ueue;/*队列的顺序结构体类型*/(3)队列的特点:先进先出三、实例1.循环队列(即队列的顺序存储结构)实现。#include #include #defineMAXSIZE20/*数组最大界限*/typedefintElemType;/*数据元素类型*/typedefstruct{ElemTypea[MAXSIZE];/*一维数组子域*/intfront,rear;/*头、尾指针子域*/}SqQueue;/*循环队列的结构体类型*/SqQueueQ1;/
3、*函数声明*/voidinit_Q(SqQueue*Q);voidout_Q(SqQueueQ);voidEnQueue(SqQueue*Q,ElemTypee);//ElemTypeDeQueue(SqQueue*Q);/*主函数*/main(){intk;ElemTypee,x;charch;init_Q(&Q1);/*初始化一个空循环队列*/do{printf("");printf("1.数据元素e进队列");printf("2.出队一个元素,返回其值");pri
4、ntf("3.结束程序运行");printf("======================================");printf("请输入您的选择(1,2,3)");scanf("%d",&k);switch(k){case1:{printf("进队e=?");scanf("%d",&e);EnQueue(SqQueue&Q1,e);out_Q(Q1);}break;case2:{x=DeQueue(&Q1);printf("出队元素:%d",x);out_Q
5、(Q1);}break;case3:exit(0);}/*switch*/printf("----------------");}while(k>=1&&k<3);printf("再见!");printf(“打回车键,返回。“);ch=getch();}/*main*/Q1.front345012Q1.rearr空循环队列/*初始化空队列*/voidinit_Q(SqQueue*Q){Q->front=0;Q->rear=0;}/*init_Q*//*输出队列的内容*/voidout_
6、Q(SqQueueQ){charch;inti;/*不能修改队列头、尾指针*/if(Q->front==Q->rear)printf(“QueueisNULL.“);else{i=(Q->front+1)%MAXSIZE;while(i!=Q->rear){printf(“data=%d”,Q->a[i]);i=(i+1)%MAXSIZE;}printf(“data=%d”,Q->a[i]);}printf(“打回车键,继续。“);ch=getch();}/*out_Q*//*进队
7、函数*/voidEnQueue(SqQueue*Q,ElemTypee){if((Q->rear+1)%MAXSIZE==Q->front)printf(“QueueisOverflow!”);else{Q->rear=(Q->rear+1)%MAXSIZE;Q->a[Q->rear]=e;}}/*EnQueue*/Q1.front345012Q1.rear1112进队两个数据后1.队列的链表储结构及实现。#include#include#include<
8、math.h>typedefintElemType;typedefstructQNode{ElemTypedata;/*数据子域*/structQNode*next;/*指针子域*/}QNode;/*结点结构类型*/typedefstruct{Qnode*front,*rear;/*头、尾指针子域*/}L_Queue;/*“头尾”结点结构类型*/L_QueueQ1;/*函数声明*/voidinit_Q(L_Queue*Q);voidout_Q(L_QueueQ);voidEnQue
此文档下载收益归作者所有