总体计划
获取我的课程信息以自动优化并选择我的uni课程时间表。
整体算法
6详细列出所有的课程,以讲座为重点,将排名最高(每门学科只有一个),并试着围绕这类课程进行安排。
问题
有人能给我提供一些类似于用python编写的东西的链接吗?关于6.:您会推荐什么样的数据结构来存储这些信息?单人马的每一个对象的链接列表?我是否应该将所有信息写入文本文件?
我正在考虑建立独角兽,类似于以下属性:
我对Python几乎没有经验,并认为这将是一个很好的学习项目,试图完成。感谢为帮助我入门而提供的任何帮助和链接,开放给编辑进行适当的标记或任何必要的(不确定这属于编程和python之外的其他方面吗?)
编辑:无法得到我想要的适当格式,所以发布><
发布于 2009-01-07 10:29:08
根据您对#6的计划,以及数据集的大小,它可能并不简单;对我来说,这无疑是NP硬全局优化的味道.
不过,如果您谈论的是几十个节点(而不是数百个节点),那么一个相当愚蠢的算法应该能够提供足够好的性能。
因此,您有两个限制:
我所说的“灵活”的意思是,你可以去更间隔的班级(分数较低),但你不能同时上两个班。有趣的是,得分和冲突之间可能存在正相关关系;得分较高的班级更容易发生冲突。
我第一次通过一种算法:
selected_classes = []
classes = sorted(classes, key=lambda c: c.score)
for clas in classes:
if not clas.clashes_with(selected_classes):
selected_classes.append(clas)如果课程长度不均衡,从奇怪的时间开始,那么解决冲突可能会很尴尬。将开始时间和结束时间映射为“时间块”的简化表示(每15分钟/ 30分钟或任何您需要的时间),可以更容易地查找不同类的开始和结束之间的重叠。
发布于 2009-01-07 09:39:56
BeautifulSoup在这里被提到过几次,例如在python中获取xml属性值列表。
美丽的Soup是一个Python /XML解析器,专为屏幕抓取之类的快速周转项目而设计。有三个特性使其强大:
美汤会解析你给它的任何东西,并为你做遍历树的事情。您可以告诉它“查找所有链接”,或者“查找externalLink类的所有链接”,或者“查找urls与"foo.com”匹配的所有链接,或者“查找具有粗体文本的表标题,然后给我该文本”。“
曾经被锁在设计不善的网站上的有价值的数据现在就在你的手中。花上几个小时完成的项目,只需几分钟就可以得到美汤。
发布于 2009-01-07 12:09:58
这里的问题太多了。
请将其分解为主题区域,并就每个主题提出具体问题。请把注意力集中在其中一个,并提出具体问题。请定义你的术语:“最佳”并不意味着没有一些具体的衡量优化。
这是我在你的主题列表中看到的。
顺便说一下,Python有"列表“。不管它们是否有“联系”,都没有真正涉及到其中。
https://stackoverflow.com/questions/419698
复制相似问题