找到图表中

时间:2016-01-31 03:29:27

标签: algorithm search graph breadth-first-search

我一直在练习面试的算法问题。我想到了这个问题并且不知道我是否以最佳方式解决了这个问题:

给出一个包含多个目的地的图表。找到到达所有目的地的旅行距离总和最短的起点。

我尝试通过对每个点执行广度优先搜索并搜索目的地来解决它。但这只是暴力迫害。有没有更好的解决方案,还是有其他相关材料?

1 个答案:

答案 0 :(得分:-2)

这被称为"旅行推销员"问题。在这里寻找答案:

TSP (Traveling Salesman Problem) solver Using GoogleMap

我一直认为这些类型的问题最容易通过找到所有点的中心点来回答,这些点会产生奇怪的外观。你应该做的就是绕着圆圈走。然而,美国宇航局的一位数学家向我展示了这并不是最好的选择。确实是一个非常有趣的讨论: - )

进一步阐明萨尔瓦多·达利正在谈论的内容 - 这里是他所说的话的图表: enter image description here

这就是我的意思:

enter image description here

记住 - 这只是随机点。两者都从原点(0,0)开始。

现在是硬道理。达利的方式以及我说话的方式只不过是旅行商问题的可能结果。在Dali's,推销员只是回到原点(你想从哪里开始),然后推销员前往下一点。在我的,销售人员只是一次点到一点。这个特定问题的实际答案是什么 - 未知。或者换一种方式 - 最好的答案是未知的。通常情况下,销售人员来回纵横交错以达到最佳路径,除非所有点彼此相等。