大佬教程收集整理的这篇文章主要介绍了找到障碍的最短路径的算法,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
这是使用A *搜索算法的极好地方,该算法是一种启发式搜索算法,即使存在障碍物也可以非常快速地找到点之间的最佳路径。想法是将网格转换为图形,其中网格中的每个单元都是一个节点,并且在任意两个相邻单元之间没有被彼此阻挡的边。拥有该图形后,您要寻找的答案是图形中从起始节点到目标节点的最短路径。
为了使用A *,您需要一个启发式函数来“猜测”网格上任何点到目标正方形的距离。一种很好的启发方法是使用两点之间的曼哈顿距离。
如果您正在寻找一种更简单但仍然非常有效的算法来查找最短路径,请考虑研究Dijkstra的算法,可以将其视为A的简单版本。它比A 慢一些,但仍然运行得非常快,并保证了最佳答案。
希望这可以帮助!
我有一个表示网格的Points集合,我正在寻找一种算法,该算法可使我在A点和B点之间的距离最短。任何点(不包括A点和B点)的捕获都可能会阻碍路径,并且因此必须绕道而行。路径可能不会沿对角线移动。
对于希望解决此类问题的其他人,我发现这些参考非常有用:
http://optlab-
server.sce.carleton.ca/POAnimations2007/DijkstrasAlgo.html
http://en.literateprograms.org/Dijkstra%27s_algorithm_%28Java%29#chunk%20def:visit%20each%20vertex%20u,%20always%20visiting%20vertex%20with%20smallest%20minDistance%20first
以上是大佬教程为你收集整理的找到障碍的最短路径的算法全部内容,希望文章能够帮你解决找到障碍的最短路径的算法所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。