1.首先把最难弄的老师排上,就是说她教的班多,限制多。(这步的实际 *** 作就是把排课顺序按照班数排序)
2.随机安排课(当然要根据人类习惯,您总不能让他一天上七节课),安排方式为先满足部分人需求(当然不太公平),然后剩下的补空
3.这剩下的部分人可能因为班级的关系出现重课的问题,没有关系,先把他安排上去,用repeat循环逐层更改被冲突对象的课节(最后可以选把美术音乐等老师,他们安排到下午的话上午比较好换)
具体跟据实际来定。。……我乱讲讲。这是我的想法模型。
不会写就不写嘛,找个排课的软件,修改下就行了:我不知道怎样破解源程序,但能根据一些排课软件做点点外科手术:
我到用了一个到现在我认为最好用的排课软件,是测试版的,能导出表格,
排课相当方便。
虽然未注册版本有限制功能,但能导出一个全校总表。
我用EXECL做了一个转换文件,把总表转成个人课表,班课表及个人工作量计算表。
算是补齐了导出限制功能。就算是破解吧。
排课算法是一个复杂程度相当高的算法,穷举是行不通的。不同的班级,不同的教师的课程纵横交错,不可能对每一种组合一一穷举。一间不到三十个班的学校,其课程组合的数量级常常超过整个宇宙质子数的总和。
但在这么多的课程组合中,找出“相对合理”的课程组合,满足学校、教师、学生的要求是可行的。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)