求一种集合的算法!

杨哥儿 2011-01-05 02:16:42
班级课表的问题。
一门课上课的周次为:01-08,10-18(第9周五一放假)
该课程01-06周为张老师上,(07-08,10-12)为李老师上,14-18为王老师上。
上课地点01-11周在A教室,12-18周在B教室。
得到课表:
大学英语[01-08,10-18]
张老师[01-06]李老师[07-08,10-12]王老师[14-18]
A教室[01-11]B教室[12-18]

现在需要校验该课程每一周的老师和教室有安排并且唯一。
即有集合A{01-18,10-18}、
集合B1{01-06},B2{07-08,10-12},B3{14-18}、
集合C1{01-11},C2{12-18}
验证B1,B2,B3交集为空(即老师唯一),C1,C2的交集为空。(即教室唯一)
验证B1,B2,B3交集的并集=集合A(验证失败,第13周安排没有老师),
C1,C2的交集的并集=A(验证失败,因为集合A中没有第9周而C1,C2的交集中有)
请问算法怎么写?



...全文
211 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
杨哥儿 2011-01-06
  • 打赏
  • 举报
回复
真的没人理我了?
杨哥儿 2011-01-06
  • 打赏
  • 举报
回复
谢谢小高!
这仅仅是排课的一部分。
多门课程之间的冲突校验我还没开始做呢!在这个地方就拦住了。
子夜__ 2011-01-06
  • 打赏
  • 举报
回复
看的头疼。。。。。。。。。。
yixianggao 2011-01-06
  • 打赏
  • 举报
回复
lz 现在提要的仅仅是课程内的冲突校验,其实更复杂的是多门课程之间的冲突校验!
yixianggao 2011-01-06
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 uself 的回复:]
不是我要拆。目前的用户需求成了这样!一门课多教师多场地。跟我们所理解的完全不一样了。
[/Quote]

以前做过培训系统的排课,一门课多教师多场地很常见,无非就是排课冲突校验!

这个问题用对象来组织数据更合适,用数组岂不是自找麻烦?!
杨哥儿 2011-01-06
  • 打赏
  • 举报
回复
不是我要拆。目前的用户需求成了这样!一门课多教师多场地。跟我们所理解的完全不一样了。
yixianggao 2011-01-06
  • 打赏
  • 举报
回复
呵呵,lz 为啥把好好的对象拆成集合来处理?

费解费解!

这里核心对象就是 Lesson,用对象思想更适合解决排课问题!
杨哥儿 2011-01-05
  • 打赏
  • 举报
回复
csdn的高手出来现个身吧!
杨哥儿 2011-01-05
  • 打赏
  • 举报
回复
请大佬们出来帮个忙吧!
杨哥儿 2011-01-05
  • 打赏
  • 举报
回复
谢谢吴老大!我们排课有差异的。不然早用他们的了。
wuyq11 2011-01-05
  • 打赏
  • 举报
回复
数组可使用Intersect,Except
排课算法
http://topic.csdn.net/u/20101201/21/19cff6f2-8e3a-4214-ab0b-f75dd1e28853.html
杨哥儿 2011-01-05
  • 打赏
  • 举报
回复
验证B1,B2,B3的并集=集合A(验证失败,第13周安排没有老师),
验证C1,C2的并集=A(验证失败,因为集合A中没有第9周而C1,C2的交集中有)

写错了,请原谅!

13,190

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 分析与设计
社区管理员
  • 分析与设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧