栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

通过迷宫必须穿越的起点和终点之间的最小距离

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

通过迷宫必须穿越的起点和终点之间的最小距离

好的,所以也许我会再尝试解决这个问题。上次,我没有注意到您可以多次访问一个点的事实,因此建议可能是错误的。

首先,假设“开始”,“结束”和“灰色”节点的总数为N,并且“开始”为0,“结束”为N-1,“灰色”节点的总数为1到N-2。

我们可以看到我们可以

state
随时
(mask, index)
用表示,其中index表示我们所在的当前节点,mask表示我们已经访问过的所有节点(0
<mask <2 ^ N)。

首先,状态为(1,0)或(00000 … 1,0),这意味着仅访问了城市0,我们的目标是到达状态(2 ^
N-1,N-1),这意味着访问所有节点,然后在节点N-1结束旅程。

因此,在这一点上,我们可以很容易地看到,我们已经将原始问题转换为状态图,并且我们的目标是找到从状态0(1,0)到状态末端(2 ^ N-1)的最短路径。
,N-1),因此,对这个新图应用Dijkstra最短路径算法,我们就得到了答案。

注意:答案基于一个假设,即N <= 17

另一个要注意的是:对于机器人技术,最短的路径可能并不一定是最佳的路径,因为机器人在旋转和直线运行时的速度是不同的。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/485653.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号