本章内容:
学习NP完全问题,如何处理不可能完成的任务。
学习识别NP完全问题,以免浪费时间去寻找解决它们的快速算法。
学习近似算法,使用它们可快速找到NP完全问题的近似解。
学习贪婪策略----一种非常简单的问题解决策略。
8.1教室调度问题
贪婪算法的优点----简单易行。每步都采取最优的做法。就是每步都选择局部最优解。
8.2近似算法
在获得精确解的时间太长时,可以使用近似算法。判断近似算法的优劣标准如下:速度有多快;得到的近似解与最优解的近似程度。
贪婪算法是不错的选择,简单而且速度快,运行时间为O(n2)
states_needed=set(["mt","wa","or","id","nv","ut","ca","az"])
stations = {}
stations["kone"] = set(["id", "nv", "ut"])
stations["ktwo"] = set(["wa", "id", "mt"])
stations["kthree"] = set(["or", "nv", "ca"])
stations["kfour"] = set(["nv", "ut"])
stations["kfive"] = set(["ca", "az"])
final_stations=set()
wh