我教科书中的一个问题要求我计算并找到从Mehadia到布加勒斯特的路线,1)贪婪搜索和2)统一成本搜索。
*现在我能够通过统一的成本搜索来完全说明和解决路线,但我的贪婪搜索看起来非常相似。关于如何通过“贪婪”搜索计算路线的任何想法?
更新 我已经应用了一个凌乱的贪婪的算法,并且从我的统一成本中获得了与最短路线不同的路线。
这是我贪心算法输出的路线。该算法只是继续检查并选择最小的本地值。我对任何人的新问题:这条路线是否可以作为我贪婪算法的输出?即我的解决方案甚至可以在法律上被认为是贪婪的吗?
根据我的新算法路由:
Mehadia - > Lugoj - >蒂米什瓦拉 - > Arad - > Zerind - >奥拉迪亚 - >锡比乌 - > Rimnicu Vilcea - > Pitesti - >布加勒斯特
答案 0 :(得分:1)
当您使用统一成本搜索时,您正在计算从Mehadia到所有节点的最短路径,因此您可以确定Mehadia-Bucharest路径将是最佳路径(此算法是完整且最优的)。 但是,如果您使用贪婪搜索算法,它将选择本地最佳 选项丢弃每个节点的其他节点。该算法既不完整也不优化。 要回答你的问题,你的解决方案被视为贪婪。
希望这有帮助。