数据结构算法的综合设计与应用-设计性实验报告

数据结构算法的综合设计与应用-设计性实验报告

ID:14978253

大小:131.50 KB

页数:9页

时间:2018-07-31

数据结构算法的综合设计与应用-设计性实验报告_第1页
数据结构算法的综合设计与应用-设计性实验报告_第2页
数据结构算法的综合设计与应用-设计性实验报告_第3页
数据结构算法的综合设计与应用-设计性实验报告_第4页
数据结构算法的综合设计与应用-设计性实验报告_第5页
资源描述:

《数据结构算法的综合设计与应用-设计性实验报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、本科学生设计性实验报告项目组长__江华东__学号__0106365_成员无专业_软件工程班级_106_实验项目名称表达式求值的综合设计与应用指导教师及职称_严军勇讲师___开课学期2012至2013年_第二学期上课时间2013年2月25日至6月14日一、实验设计方案实验名称:表达式求值的综合设计与应用实验时间:2013-06-05小组合作:是否○小组成员:无1、实验目的:实验目的:通过实现某复杂算法应用,使学生理解数据结构基本概念、掌握栈、队列、树等的应用等,熟练使用C或者C++。巩固同学们在课堂上所学的知识激发同学们主动学习和应用新知识的意识。实

2、验要求:独立完成一个复杂算法应用的设计。实验过程的指导:指导学生实验方案设计,包括:数据结构设计、算法设计等。评价办法:总分6分,根据问题难度(2分)、算法描述清晰程度(1分)、程序完成情况(2分)、程序可读性(1分)四个方面确定最后得分。本项目综合训练的内容:定义数据结构的存储结构,在选定的存储结构上实现所选择的算法,定义函数,利用该算法解决某个实际应用问题。本设计性实验由学生在下列题目中任选,或自拟题目:多项式求解;哈夫曼编码;迷宫求解;表达式求值;银行排队系统模拟2、实验场地及仪器、设备和材料:实验场地:实验室?仪器设备:联想台式机一台,Mi

3、crosoftVisualC++6.03、实验思路(实验内容、数据处理方法及实验步骤等):代码实现:#include#include#includetemplatestructstackframe//定义一个结构体以建立堆栈{Mdata;stackframe*next;};templateclassStack//建立一个模板类从而实现栈的功能{public:Stack();~Stack();intStackEmpty();intStackLength(

4、);MGetTop();voidPush(Me);boolPop(M&m);private:stackframe*base;stackframe*top;intstacksize;};templateStack::Stack()//栈类的初始化函数{base=newstackframe;top=base;top->next=NULL;stacksize=0;}templateStack::~Stack()//栈类的析构函数{}templateintStack::St

5、ackEmpty()//判断栈类是否为空的函数{if(top==base)return1;elsereturn0;}templateintStack::StackLength()//用来求栈长的成员函数{returnstacksize;}templatevoidStack::Push(Me)//用来实现堆栈压入元素的函数{stackframe*p=newstackframe;p->data=e;p->next=top->next;top->next=p;stacksize++;}templat

6、eboolStack::Pop(M&m)//用来实现弹出堆栈元素的函数{if(!stacksize){cout<<"Poperror!";returnfalse;}else{stackframe*p=top->next;m=p->data;top->next=p->next;deletep;stacksize--;returntrue;}}templateMStack::GetTop()//用来取栈顶元素的函数{if(!stacksize){cout<<"Gettoperror!";retu

7、rnfalse;}else{returntop->next->data;}}charcompare(charc1,charc2);//定义一个比较函数用来比较运算符的优先级doubleoperate(doublen1,charopr,doublen2);//定义一个计算函数来进行表达式运算voidmain()//主函数{charc,c1,c2;doublea,b,d;Stacks1;Stacks2;s1.Push('#');cout<<"请输入你想计算的表达式并以'#'结尾:"<

8、.put(c);while(c!='#'

9、

10、s1.GetTop()!='#')//循环用来读入数据并判断处理{char*k

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。