在android中找到最短路径/距离的算法?

时间:2011-10-18 06:53:11

标签: android algorithm

我是Android新手,我正在做一些项目规划。

要完成规划,我必须知道我将在项目中使用哪些算法或技术。这个想法非常简单。我只是想确定我当前位置和几家超市位置之间的最短路径/距离。

我可以申请任何算法或Android API吗?

1 个答案:

答案 0 :(得分:11)

我不了解Android API,但如果有什么东西你应该能够在谷歌上找到它。例如,尝试查看“google map api”,如果您可以轻松获取api的路线和距离。

Google direction API

查找例子

甚至更好:google distance matrix api它可以为您提供任何一组点的距离。(例如每行的矩阵:[您的位置,一个超市]

  

例如:如果我在巴黎和我的<20> de la bonne graine   想要查看 monoprix(超市5 Rue)的距离   Godefroy Cavaignac)我可以请求类似的东西:   http://maps.googleapis.com/maps/api/distancematrix/json?origins=20%20passage%20de%20la%20bonne%20graine&destinations=45%20Rue%20Godefroy%20Cavaignac,%2075011%20Paris,%20France&mode=walking&language=fr-FR&sensor=false

根据算法,您可以按以下方式处理:

创建图表:

  • 每条路都是边缘
  • 每个超级市场都是一个节点
  • 您的位置是一个节点

然后应用Dijktra's algorithm找到您的职位与所有超市之间的最短路径

以下是关于Dijktra算法如何运作的一个很好的例子(来自维基百科):

enter image description here

希望有所帮助