数据结构实验报告二(栈、队列与杨辉三角).docx

数据结构实验报告二(栈、队列与杨辉三角).docx

ID:51437446

大小:25.59 KB

页数:9页

时间:2020-03-24

数据结构实验报告二(栈、队列与杨辉三角).docx_第1页
数据结构实验报告二(栈、队列与杨辉三角).docx_第2页
数据结构实验报告二(栈、队列与杨辉三角).docx_第3页
数据结构实验报告二(栈、队列与杨辉三角).docx_第4页
数据结构实验报告二(栈、队列与杨辉三角).docx_第5页
资源描述:

《数据结构实验报告二(栈、队列与杨辉三角).docx》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、《数据结构》实验报告项目名称栈、队列与杨辉三角专业班级软件工程工科试验班学号3903120128姓名谢江实验成绩:批阅教师:2012年5月22日实验1《单链表的建立与约瑟夫问题》实验学时:实验地点:寝室与实验室实验日期:2012年5月22日1.需求分析实验2主要是关于栈。队列的建立以及杨辉三角问题的解决(队列运用)2.概要设计以及详细设计(1)栈classStack{public:Stack();boolempty();//判断栈是否为空Tpeek();//显示栈顶元素voidpush(Tvalue);//入

2、栈Tpop();//出栈intgetSize();//当前栈中元素的数量private:T*elements;//数组指针intsize;//栈中的元素数量intcapacity;//栈的容量voidensureCapacity();//确认栈的容量是否大于元素数量};(2)队列classQueue{public:Queue();voidenQueue(Telement);//元素入队TdeQueue();//元素出对,如果没有元素,抛出异常intgetSize();//获取队列大小private:Linke

3、dListlist;//定义表};3.调试分析内容包括:调试过程中遇到的问题是如何解决的以及对设计与实现的回顾讨论和分析;算法的时空分析(包括基本操作和其他算法的时间复杂度和空间复杂度的分析)和改进设想;经验和体会等。个人标记:能建立顺序栈,以及链表顺序队列,对于比较复杂的链栈、循环队列等比较不熟悉,杨辉三角问题存在问题此次报告暂时不交,还有就是抛出异常的问题,例如:TdeQueue()throw(runtime_error);//元素出对,如果没有元素,抛出异常会提示警告:C++exceptionsp

4、ecificationignoredexcepttoindicateafunctionisnot_declspec(nothrow)于是尽可能用if(…)throwruntime_error,就不报错了4.附录(1)栈Stack.h*****************************//采用数组的方式进行栈的操作#ifndefSTACK_H#defineSTACK_HtemplateclassStack{public:Stack();boolempty();//判断栈是否为空Tpe

5、ek();//显示栈顶元素voidpush(Tvalue);//入栈Tpop();//出栈intgetSize();//当前栈中元素的数量private:T*elements;//数组指针intsize;//栈中的元素数量intcapacity;//栈的容量voidensureCapacity();//确认栈的容量是否大于元素数量};templateStack::Stack(){capacity=10;//初始栈的大小size=0;//初始元素的数量elements=newT[ca

6、pacity];//建立指针}templateboolStack::empty(){if(size==0)returntrue;elsereturnfalse;}template//只显示栈顶元素并不出栈TStack::peek(){returnelements[size-1];}templatevoidStack::ensureCapacity(){if(size>=capacity)//如果满足进行指针的更换{T*old=

7、elements;capacity=size+1;elements=newT[capacity];for(inti=0;ivoidStack::push(Tvalue){ensureCapacity();//入栈前进行栈是否溢出的判断elements[size++]=value;}templateTStack::pop(){returnelements[--

8、size];}templateintStack::getSize(){returnsize;}#endif*************************************TestStack.cpp*************************************#include#include"Stack.h"usingnamespa

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

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

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