- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据构造课设学生搭配问题
数据构造课设学生搭配问题
PAGE / NUMPAGES
数据构造课设学生搭配问题
数据构造
课程设计报告书
班级
学号
专业
姓名
课题描绘:
一、 需求剖析:
设计内容
一班有 m个女生 , 有 n 个男生 (m 不等于 n), 现要开一个舞会 . 男女生疏别编号坐在
舞池的两边的椅子上 . 每曲开始时 , 挨次从男生和女生中各出一人配对跳舞 , 本曲
没成功配对者坐着等候下一曲找舞伴 .
请设计一系统模拟动向地显示出上述过程 , 要求以下 :
输出每曲配对状况
计算出任何一个男生 ( 编号为 X) 和任意女生 ( 编号为 Y), 在第 K曲配对跳舞的 状况. 起码求出 K 的两个值 .
尽量设计出多种算法及程序 , 可视状况适合加分
需求
本课题要对数目不等的男生女生跳舞进行搭配,设计需要解决每一首曲子
男生女生的搭配状况,要采纳循环行列的模式来解决,男生和女生各在两个循环
的行列中,每首曲子开始,便在两个队首各取一人成功配对跳舞,并进入队尾,
等候下一次配对。
比如:( 3 男 5 女状况)
第一首:男 1 和女 1
第二首:男 2 和女 2
第四首:男 1 和女 4
二、 整体构造设计:
为实现上述功能和目的, 要用到循环行列的有关知识, 同时, 要定义必定的抽的数据种类,主函数调用各个函数模块
各模块函数介绍:
1)class cirularQueue
作用:定义一个一个循环行列
2)~cirularQueue()
作用:定义析构函数,使对象在撤除时开释
3)bool IsFull()
作用:判断行列能否已满
4) bool IsEmpty()
作用:判断行列能否为空,用于出行列前使用
5) void push(T info)
作用:入队。每对舞伴跳完舞以后,做入队办理,抵达队尾,等候下次跳舞。
6) void Pop(T info)
作用:出队。每取曲子响起时男生行列和女生行列作出队办理,两人跳舞。
7) void GetHead(T info)
作用:取队首元素,对出队的男女进行辨别。
8) void Initqueue(cirularQueueint,int);
作用:初始化行列
9) void display(int,int);
作用:依据男生和女生的人数和曲目的数目,来判断每曲歌的男女配对状况
10 ) void charge(int,int);
作用:判断指定组合可否配对成功
本程序包括三个模块:
主程序模块:
void main()
{
初始化;
do{
接授命令;
办理命令;
}while( “命令” =”退出”)
}
、会合单元模块——实现会合的各个函数模块
、结点构造单元模块——定义会合的结点构造
三、 各子模块设计:
主函数调用关系图
主函数
数据输入 每曲配对 k 曲配对
~cirularQueue() 编号
class
void
GetHead(T
输出
void Pop(T void push(T
IsEmpty() bool IsFull()
图 main()
初始化表示
began
否
iMaxsize
Push(i)
end
图 void Initqueue(cirularQueueint Q,int m)
3 每曲配对函数调用关系图 void display(int,int)
初始化男女
循环行列
k=songnum
否 (x)
(y)
是
输出 k 首男 x 女 y
(x)
(y)
k++
end
图 void display(int,int)
4 第 k 曲配对函数调用图 void charge(int,int)
初始化男女
循环行列
count=songn
count+
(x)
(y)
(x)
(y)
(x==a)
(y==b)
男 a 女 b 第 count 跳
break
图 void charge(int,int)
4
队满判断 bool IsFull()
首尾次序相邻
行列为满
5
对空判断原则 bool IsEmpty()
首尾指针相等
行列为空
输出他们不会一同跳
end
6 入队流程 void push(T info)
队满 不可以入队
队尾进入 尾指针移
7 出队流程 void Pop(T info)
队空 不可以出队
队头出列 头指针移
8. 取队首元素代码 void GetHead(T info)
四、
编程实现:
#includeiostream
template class T
class cirularQueue // 定义一个一个循环行列
{ private:
int MaxSize;
int front;
//
头指针
int rear;
//
尾指针
*data;
public:
您可能关注的文档
- 数据结构第9章习题.docx
- 数据结构第八章习题及.docx
- 数据结构考研试题及第9章查找.docx
- 数据结构试卷及参考.docx
- 数据结构课后习题.docx
- 数据结构课后习题及.docx
- 数据结构课程教学大纲.docx
- 数据结构课程设计《飞机订票系统》.docx
- 数据结构课程设计报告计划——图书管理系统.docx
- 数据结构课程设计报告计划二叉树.docx
- 采购失职行为的告知书-企业管理.pptx
- 《光储充产业:2025年新能源汽车补能商业化投资机会分析》.docx
- 2025中国中煤能源集团有限公司西南分公司(四川分公司)第五批招聘23人备考题库附答案详解.docx
- 《2025年节能照明行业LED技术升级与智能照明系统市场应用场景》.docx
- 2025年智能家居集成设备在家装中的智能化升级.docx
- 立体几何题目及答案.doc
- 《2025年AI算力需求增长对东数西算基建影响分析报告》.docx
- 2025中国中煤能源集团有限公司西南分公司(四川分公司)第七批招聘2人备考题库附答案详解.docx
- 《2025年宠物医疗行业创新趋势:连锁化与专科服务机遇分析》.docx
- 《2025年智能制造园区地产创新模式》.docx
最近下载
- 氯胺酮的合成.pptx VIP
- 严重腹部创伤院内救治专家共识(2024).pptx VIP
- 水泥混凝土抗冻性试验方法.doc VIP
- 2025年陕西省公务员录用考试《行测》真题及答案解析(考生记忆版).pdf VIP
- 2020年全国统一高考数学试卷(理科)(新课标Ⅱ)含解析.doc VIP
- 2020年全国统一高考数学试卷(理科)(新课标Ⅰ)含解析.doc VIP
- 【国家标准】GB 11291.1-2011 工业环境用机器人 安全要求 第1部分:机器人.pdf
- 汇成真空(301392)真空镀膜设备领先企业,高景气下游助力增长-250830-华源证券-21页.pdf VIP
- 2022春节窑鸡项目计划书-.pdf VIP
- 以来历年全国高考数学试卷全试题标准答案解析.doc VIP
原创力文档


文档评论(0)