我正在使用我的大学网站上的课程列表来选择学生时间表的程序。有些课程仅按一个时间表提供(例如,线性代数的星期日和星期二的9:00),而另一些课程则提供一系列的时间表(例如,HTML可以是星期一和星期三的11:00或1:00在星期日和星期二)。有些课程有多达14个时间表选项。
输入的内容是用户选择的一组课程ID。
对于只有一个时间表的课程,我可以直接添加它们。但是,在可以选择的地方,如何确定要选择的时间表?
以任何方式尝试解决它,这似乎都是一个带有N个嵌套循环的NP问题。
我考虑过采用这种方式:递归计算时间表的每个组合,并制作每个可能的表。如果我只有2-4门课程且多次学习,则此方法有效。但是,由于课程众多或替代时间很多,这是否会使程序的复杂度很高,并可能使程序花费数秒/分钟来解决?
我应该使用更好的算法吗?
答案 0 :(得分:0)
对于以后任何关注此问题的人,我深表歉意,因为我没有发布我的答案,结果没有更好的方法,因为无论如何您都需要仔细检查它们是否存在冲突。我最终使用了递归函数来获取全部信息: https://stackoverflow.com/a/17193002/10371804