数据结构课程设计《排队购票问题》

数据结构课程设计《排队购票问题》

ID:41689952

大小:66.28 KB

页数:25页

时间:2019-08-30

数据结构课程设计《排队购票问题》_第1页
数据结构课程设计《排队购票问题》_第2页
数据结构课程设计《排队购票问题》_第3页
数据结构课程设计《排队购票问题》_第4页
数据结构课程设计《排队购票问题》_第5页
资源描述:

《数据结构课程设计《排队购票问题》》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、2014-1-7东北大学信息科学与工程学院数据结构课程设计报告题目排队购票问题课题组长XXX课题组成员XXXXX专业名称计算机科学与技术班级计算机1206指导教师杨雷2014年1月题目:排队购票问题问题描述:欧洲杯足球赛正在激烈进行。决赛门票处于热卖。为使门票公平、安全的销售,售票处决定采用如下售票规则:(1)购票者到购票处领取一个随机编号。(2)购票者按随机编号从小到大排序。(3)随机编号处于最小编号与最大编号之间的购票者,可直接到窗口排队购票。(4)售票窗口空闲时随机发出0或1指令,指令为0时,最小编号者到窗口购票,指令为1吋,最大编号者到窗口购票。设计要求:设计算法实现按上述规则的排

2、队售票程序。(1)采用STL的双端队列等数据结构。(2)实现STL的双端队列类dequeo(3)尝试采用不同数据结构的多种解法。指导教师签字:年月曰目录1课题概述11.1课题任务11.2课题原理11.3相关知识32需求分析42.1课题调研42.2用户需求分析53方案设计73.1总体功能设计73.2数据结构设计83.3函数原型设计103.4主算法设计123.5用户界面设计144方案实现154.1开发环境与工具15164.2程序设计关键技术4.3个人设计实现(按组员分工)4.3.1XX设计实现174.3.2XXX设计实现194.3.3XXX设计实现21235测试与调试5.1个人测试(按组员分工

3、)235.1.1XX测试235.1・2XXX测试265.1.3XXX测试303.2组装与系统测试335.3系统运行366课题总结396.1课题评价396.2团队协作406.3团队协作416.4个人设计小结(按组员分工)426.4.1XX设计小结426.4.2XXX设计小结456.4.3XXX设计小结487附录A课题任务分工50A-1课题程序设计分工50A-2课题报告分工51附录B课题设计文档(光盘)52B-1课程设计报告(电子版)52B-2源程序代码(*・H,*.CPP)5252B-4屏幕演示录像文件(可选)52附录C用户操作手册(可选)53C.1运行环境说明53B-3工程与可执行文件)5

4、4C.2操作说明1课题概述1.1课题任务欧洲杯足球赛正在激烈进行。决赛门票处于热卖。为使门票公平、安全的销售,售票处决定采用如下售票规则:(1)购票者到购票处领取一个随机编号。(2)购票者按随机编号从小到大排序。(3)随机编号处于最小编号与最大编号之间的购票者,可直接到窗口排队购票。(4)售票窗口空闲吋随机发1150或1指令,指令为0吋,最小编号者到窗口购票,指令为1时,最大编号者到窗口购票。1.2课题原理以及相关知识设计算法实现按上述规则的排队售票程序。(1)采用STL的双端队列等数据结构。(2)实现STL的双端队列类dequeo(3)尝试采用不同数据结构的多种解法。2系统需求分析只需对

5、来购票的人进行合理公平的随机分配即可,然后进行取票。开发环境:PC机WindowsXP系统使用软件:编写实验报告:MicrosoftOfficeWord画图:陈柯铮制作程序:MicrosoftVisualC++6.03算法流程V结束4方案实现与关键技术双端队列是一种具有队列和栈的性质的数据结构。双端队列中的元素可以从两端弹出,其限定插入和删除操作在表的两端进行。双端队列是限定插入和删除操作在表的两端进行的线性表。这两端分别称做端点1和端点2(如下图(a)所示)。也可像栈--样,可以用一个铁道转轨网络来比喻双端队列,如下图(b)所示。在实际使用中,还可以有输出受限的双端队列(即一个端点允许插

6、入和删除,另一个端点只允许插入的双端队列)和输入受限的双端队列(即一个端点允许插入和删除,另一个端点只允许删除的双端队列)。而如果限定双端队列从某个端点插入的元素只能从该端点删除,则该双端队列就蜕变为两个栈底相邻的栈了。双端队列就是一个两端都是结尾的队列。队列的每一端都可以插入数据项和移除数据项。这些方法可以叫作insertLeft()和insertRight(),以及removeLeft()和removeRight()o如果严格禁止调用insertLeft()和removeLeft()方法(或禁用右段的操作),双端队列功能就和栈一样。禁止调用insertLeft0和removeRight

7、()(或相反的另一对方法),它的功能就和队列一样了。双端队列与栈或队列相比,是一种多用途的数据结构,在容器类库中有时会用双端队列来提供栈和队列两种功能。5程序实现5.1个人程序实现5.1.1杨兵程序实现voidOPl(deque&DataJnt*Result,intPeopleCount,intTicketCount)Result[PTR]=Data.front();PTR++;Data.pop_front()

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

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

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