我正在开发一个简单的应用程序,用于为学校生成时间表(日程),该应用程序涉及到 IT 技术。我已经阅读了算法的基础知识,但在何处开始感到困惑。
问题如下: 安排老师上课,考虑到许多约束条件,例如: 1) 科目 2) 老师的专业技能 3) 不要连续上超过两节课等。 当然不能出现重叠。基本上,我需要将 N 个老师分配给 M 个班级,每天工作小时数固定为 8 小时。
输入信息包括: 1) 班级总数 2) 带有科目专业的教师 3) 每个班级的科目/课程 4) 每天每班的讲课次数 5) 其他灵活的约束条件,如每天老师的最小 / 最大工作小时数,每周老师的总工作小时数等
我的问题是: 1) 是否正确将其视为具有多个约束的分配问题? 2) 我应该使用哪种算法?(匈牙利算法?) 3) 应该先一口气获得所有约束集,然后再生成时间表,还是应该分步进行?
我是算法的初学者,因此任何指导都会受到赞赏!谢谢。
问题如下: 安排老师上课,考虑到许多约束条件,例如: 1) 科目 2) 老师的专业技能 3) 不要连续上超过两节课等。 当然不能出现重叠。基本上,我需要将 N 个老师分配给 M 个班级,每天工作小时数固定为 8 小时。
输入信息包括: 1) 班级总数 2) 带有科目专业的教师 3) 每个班级的科目/课程 4) 每天每班的讲课次数 5) 其他灵活的约束条件,如每天老师的最小 / 最大工作小时数,每周老师的总工作小时数等
我的问题是: 1) 是否正确将其视为具有多个约束的分配问题? 2) 我应该使用哪种算法?(匈牙利算法?) 3) 应该先一口气获得所有约束集,然后再生成时间表,还是应该分步进行?
我是算法的初学者,因此任何指导都会受到赞赏!谢谢。