鱼C论坛

 找回密码
 立即注册
12
返回列表 发新帖
楼主: zhaoximeng

想咨询一下,如何设计一个排课表的软件

[复制链接]
发表于 2020-5-18 14:21:33 | 显示全部楼层
zhaoximeng 发表于 2020-5-18 10:20
我是这样检查的 但是我是用的随机课表
检查不通过则重新随机课表 这样的话 班级多了的话 时间就比较长

不需要遍历吧,每个班排课的时候访问一下数组就行了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-5-18 14:40:36 | 显示全部楼层
我想先问一下一共几门课都是什么?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-5-18 15:07:35 | 显示全部楼层
zhaoximeng 发表于 2020-5-18 10:21
安装哪个软件打开比较好啊

vscode

我把你的需求,抽象成了 数独 的模型,你需要先思考一下,合理性。

如果合理,那就可以参考一下我的代码。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-5-18 17:09:09 | 显示全部楼层
赚小钱 发表于 2020-5-18 15:07
vscode

我把你的需求,抽象成了 数独 的模型,你需要先思考一下,合理性。

ok 我觉得先去看看吧 数独也是一个方向
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-5-18 17:09:54 | 显示全部楼层
李子豪 发表于 2020-5-18 14:40
我想先问一下一共几门课都是什么?

语数外 政史地 理化生
每个班级 每个周35节课
一天7节课 每个老师带2,3个班
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-5-18 17:12:13 | 显示全部楼层
咸鱼c1 发表于 2020-5-18 14:21
不需要遍历吧,每个班排课的时候访问一下数组就行了

你的思路是不是:
1.先生成一个默认的二维列表
2.生成1班的课表
3.生成第二个班的课表 访问代课老师的冲突项,如果有冲突 重新生成2班课表
4.生成3班。。
5。。。
是不是这样了?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-5-18 17:24:17 | 显示全部楼层
本帖最后由 咸鱼c1 于 2020-5-18 17:28 编辑
zhaoximeng 发表于 2020-5-18 17:12
你的思路是不是:
1.先生成一个默认的二维列表
2.生成1班的课表

生成一个老师时间表[老师编号][时间],初始都为0
排课:
n个班课表:
for j in range(n):
for i in range(时间):
while(1):
老师编号随机
if(老师时间表[老师编号][i]==0):
j班课表[时间]=老师编号
老师时间表[老师编号][i]=1
break
输出j班课表
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-5-18 18:40:44 | 显示全部楼层
zhaoximeng 发表于 2020-5-18 17:12
你的思路是不是:
1.先生成一个默认的二维列表
2.生成1班的课表

你这题不要用随机,就是个深度优先搜索问题
给你参考:
https://fishc.com.cn/thread-82257-1-1.html
https://fishc.com.cn/thread-82259-1-1.html
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-5-18 20:46:07 | 显示全部楼层
jerryxjr1220 发表于 2020-5-18 18:40
你这题不要用随机,就是个深度优先搜索问题
给你参考:
https://fishc.com.cn/thread-82257-1-1.html

我感觉用数独可以保证当天老师去上课不会重复还比较简单考虑下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-5-18 20:50:04 | 显示全部楼层
zhaoximeng 发表于 2020-5-18 17:12
你的思路是不是:
1.先生成一个默认的二维列表
2.生成1班的课表

简单的话就在数独哪道题上修改一下可以每个老师依次横排or竖排上课 30个班依次排就行
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-5-18 20:56:39 | 显示全部楼层
看看对你有什么帮助吗?
D${I53_IZ~@MGT0$17`ZL10.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-5-19 15:32:17 | 显示全部楼层
李子豪 发表于 2020-5-18 20:56
看看对你有什么帮助吗?

好的 多谢 我研究下 谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-5-19 15:33:10 | 显示全部楼层
jerryxjr1220 发表于 2020-5-18 18:40
你这题不要用随机,就是个深度优先搜索问题
给你参考:
https://fishc.com.cn/thread-82257-1-1.html

我去学习下 研究下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-21 04:58

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表