1 / 6
文档名称:

数据结构实验报告(栈括号匹配).doc

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

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

分享

预览

数据结构实验报告(栈括号匹配).doc

上传人:sanyuedoc 2019/4/21 文件大小:98 KB

下载得到文件列表

数据结构实验报告(栈括号匹配).doc

文档介绍

文档介绍:数据结构课程设计报告设计题目:括号匹配院系计算机学院年级11级学生刘云飞学号E01114295指导教师王爱平起止时间9-7/9-;;;,提交实验报告;,实验过程中填写完整。;:实验之前预****占20%,实验报告书写情况占50%,运行情况30%。概要设计栈的ADT表示ADTStack{数据对象:D={ai|ai∈ElemSet,i=1,2,…,n,n>=0}数据关系:R1={<ai-1,ai>|ai-1,ai∈D,i=2,…,n} 约定an为栈顶端,a1为栈底端基本操作:StatusInitStack(&s)操作结果:构造一个空栈s。StatusPush(&s,e)初始条件:栈s已经存在。操作结果:插入元素e为新的栈顶元素。StatusPop(&s,&e)初始条件:栈s已经存在,并不为空。操作结果:删除s的栈顶元素,并用e返回其值。StatusCheck(&s,e)初始条件:栈s已经存在,并不为空。操作结果:判断括号是否匹配。StatusEnterString(&s)}ADTStack数据类型定义和核心算法和程序数据类型定义:typedefintStatus;typedefcharSElemType;typedefstruct{//栈的顺序存储表示 SElemType*base; SElemType*top; intstacksize;}SqStack;intx=0;SElemTypea;SElemTypee;核心算法:程序:#include<>#include<>#include<>#URE1#defineFALSE0#defineERROR0#defineOK1#defineINFEASIBLE-1#defineOVERFLOW-2#defineSTACK_INIT_SIZE100#defineSTACKINCREMENT10typedefintStatus;typedefcharSElemType;typedefstruct{//栈的顺序存储表示 SElemType*base; SElemType*top; intstacksize;}SqStack;intx=0;StatusInitStack(SqStack&s){//构造一个空栈S =(SElemType*)malloc(STACK_INIT_SIZE*sizeof(SElemType)); if(!)exit(OVERFLOW);//内存分配失败 =; =STACK_INIT_SIZE; returnOK;}StatusPush(SqStack&s,SElemTypee){ //插入元素e为新的栈顶元素 if(->=){ //栈满追加存储空间。 =(SElemType*)realloc(