课程实验报告.PDF

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构课程实验报告 数据结构 课程实验报告 题 目:学生排队 学生姓名 路玉欢 学生学号 201608010306 专业班级 计科 1603 班 完成日期 2017年10月15 日 - 1 - 数据结构课程实验报告 一、需求分析 1.问题描述 (1) 体育老师小明要将自己班上的学生按顺序排队。 1 ○他首先让学生按学号从小到大的顺序排成一排,学号小的排在前面。 2 ○然后进行多次调整。一次调整小明可能让一位同学出队,向前或者向后移动 一段距离后再插入队列。 (2 ) 例如,下面给出了一组移动的例子,例子中学生的人数为8 人。 1)初始队列中学生的学号依次为1, 2, 3, 4, 5, 6, 7, 8; 2 )第一次调整,命令为“3 号同学向后移动2 ”,表示3 号同学出队,向后移动 2 名同学的距离,再插入到队列中,新队列中学生的学号依次为1, 2, 4, 5, 3, 6, 7, 8; 3 )第二次调整,命令为“8 号同学向前移动3 ”,表示8 号同学出队,向前移动 3 名同学的距离,再插入到队列中,新队列中学生的学号依次为1, 2, 4, 5, 8, 3, 6, 7 ; 4 )第三次调整,命令为“3 号同学向前移动2 ”,表示3 号同学出队,向前移动 2 名同学的距离,再插入到队列中,新队列中学生的学号依次为1, 2, 4, 3, 5, 8, 6, 7 。 (3 ) 请特别注意,上述移动过程中所涉及的号码指的是学号,而不是在队伍中的位 置。在向后移动时,移动的距离不超过对应同学后面的人数,如果向后移动的 距离正好等于对应同学后面的人数则该同学会移动到队列的最后面。在向前移 动时,移动的距离不超过对应同学前面的人数,如果向前移动的距离正好等于 对应同学前面的人数则该同学会移动到队列的最前面。 (4 ) 小明记录了所有调整的过程,请问,最终从前向后所有学生的学号依次是多少? 2.输入数据 (1)输入的第一行包含一个整数n ,表示学生的数量,学生的学号由1 到n 编号。 (2 )第二行包含一个整数m ,表示调整的次数。 (3 )接下来m 行,每行两个整数p, q ,如果q 为正,表示学号为p 的同学向后移动q, 如果q 为负,表示学号为p 的同学向前移动-q 。 3.输出数据 输出一行,包含n 个整数,相邻两个整数之间由一个空格分隔,表示最终从前向后所有 学生的学号。 4.测试样例设计 (1)常规输入,调整既有向前又有向后。 样例输入: 8 3 3 2 8 -3 3 -2 样例输出: 1 2 4 3 5 8 6 7 (2 )反例输入,如经过几次排序某同学已经到了最后一位,但输入的指令仍让他后退。 样例输入: 3 - 2 - 数据结构课程实验报告 8 1 2 2 -1 1 1 3 -2 1 1 2 -1 3 -1 1 2 样例输出: 2 0 1 [3 号同学因指令错误而已经不在规定位置了] (3 )仅有向前调整。 样例输入: 8 3 3 -2 8 -3 5 -2 样例输出: 3 1 2 5 4 8 6 7 (4 )仅有向后调整 样例输入: 8

文档评论(0)

tina0229 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档