24小时免费服务热线:15320418221

算法 地图上如何搜索一个点附近的点

2021-09-23 17:52

朽猫37491

朽猫37491

比较流行A*算法,至于是否开发出了新的算法不得而知,毕竟没有完全相同的程序。给你看一篇文献:地图中最短路径的搜索算法研究学生:李小坤 导师:董峦摘要:目前为止, 国内外大量专家学者对“最短路径问题”进行了深入的研究。本文通过理论分析, 结合实际应用,从各个方面较系统的比较广度优先搜索算法(BFS)、深度优先搜索算法(DFS)、A* 算法的优缺点。关键词:最短路径算法;广度优先算法;深度优先算法;A*算法;The shortest path of map's search algorithmAbstract:So far, a large number of domestic and foreign experts and scholars on the" shortest path problem" in-depth study. In this paper, through theoretical analysis and practical application, comprise with the breadth-first search algorithm ( BFS ), depth-first search algorithm ( DFS ) and the A * algorithms from any aspects of systematic.Key s: shortest path algorithm; breadth-first algorithm; algorithm; A * algorithm;前言:最短路径问题是地理信息系统(GIS)网络分析的重要内容之一,而且在图论中也有着重要的意义。实际生活中许多问题都与“最短路径问题”有关, 比如: 网络路由选择, 集成电路设计、布线问题、电子导航、交通旅游等。本文应用深度优先算法,广度优先算法和A*算法,对一具体问题进行讨论和分析,比较三种算的的优缺点。 在地图中最短路径的搜索算法研究中,每种算法的优劣的比较原则主要遵循以下三点:[1](1)算法的完全性:提出一个问题,该问题存在答案,该算法能够保证找到相应的答案。算法的完全性强是算法性能优秀的指标之一。(2)算法的时间复杂性: 提出一个问题,该算法需要多长时间可以找到相应的答案。算法速度的快慢是算法优劣的重要体现。(3)算法的空间复杂性:算法在执行搜索问题答案的同时,需要多少存储空间。算法占用资源越少,算法的性能越好。地图中最短路径的搜索算法:
1、广度优先算法广度优先算法(Breadth-First-Search),又称作宽度优先搜索,或横向优先搜索,是最简便的图的搜索算法之一,这一算法也是很多重要的图的算法的原型,Dijkstra单源最短路径算法和Prim最小生成树算法都采用了和宽度优先搜索类似的思想。广度优先算法其别名又叫BFS,属于一种盲目法,目的是系统地展开并检查图中的所有节点,以找寻结果。换句话说,它并不考虑结果的可能位址,彻底地搜索整张图,直到找到结果为止。BFS并不使用经验法则算法。广度优先搜索算法伪代码如下:[2-3]BFS(v)//广度优先搜索G,从顶点v开始执行//所有已搜索的顶点i都标记为Visited(i)=
1.//Visited的初始分量值全为0Visited(v)=1;Q=[];//将Q初始化为只含有一个元素v的队列while Q not null dou=DelHead(Q); for 邻接于u的所有顶点w do if Visited(w)=0 thenAddQ(w,Q); //将w放于队列Q之尾Visited(w)=1;endifendforendwhileend BFS这里调用了两个函数:AddQ(w,Q)是将w放于队列Q之尾;DelHead(Q)是从队列Q取第一个顶点,并将其从Q中删除。重复DelHead(Q)过程,直到队列Q空为止。完全性:广度优先搜索算法具有完全性。这意指无论图形的种类如何,只要目标存在,则BFS一定会找到。然而,若目标不存在,且图为无限大,则BFS将不收敛(不会结束)。时间复杂度:最差情形下,BFS必须寻找所有到可能节点的所有路径,因此其时间复杂度为,其中|V|是节点的数目,而 |E| 是图中边的数目。空间复杂度:因为所有节点都必须被储存,因此BFS的空间复杂度为,其中|V|是节点的数目,而|E|是图中边的数目。另一种说法称BFS的空间复杂度为O(B),其中B是最大分支系数,而M是树的最长路径长度。由于对空间的大量需求,因此BFS并不适合解非常大的问题。[4-5]
2、深度优先算法深度优先搜索算法(Depth First Search)英文缩写为DFS,属于一种回溯算法,正如算法名称那样,深度优先搜索所遵循的搜索策略是尽可能“深”地搜索图。[6]其过程简要来说是沿着顶点的邻点一直搜索下去,直到当前被搜索的顶点不再有未被访问的邻点为止,此时,从当前辈搜索的顶点原路返回到在它之前被搜索的访问的顶点,并以此顶点作为当前被搜索顶点。继续这样的过程,直至不能执行为止。

2021-09-23 19:15:36

相关文章

相关热门问答

卿。锦年

地图上如何把几个点标注在同一条水平线上?

可以通过收藏的当时标记多个点,在登录账号的情况下可以很清楚的看到自己所标记的点,比其他所有的位置都明显很容易找到。关于地图添加收藏点的方法,可以选中一个点,点击下面出来的详情,然后点击收藏即可,后面会在地图上显示黄色五角星即是收藏的地址。

2021-09-23 17:26:00

随笔君

地图一个圆圈一个点表达的是什么意思

目标吧好像是。不太记得了。这些东西都是无师自通的。

2021-09-23 17:45:30

[已注销]

导航上说前往附近停车场如何点前往?

楼主好,在出现这样的提示时,在地图导航界面有前往附近停车场的字样,您点击之后即可导航到附近停车场了哦

2021-09-23 17:45:34

Angelina

剑网三如何设定地图上的标记点?

大侠您好:这个是造成的。不需要玩家自己设置。如能帮到您,还请采纳。

2021-09-23 17:51:56

1恼恿lA

算法 地图上如何搜索一个点附近的点

比较流行A*算法,至于是否开发出了新的算法不得而知,毕竟没有完全相同的程序。给你看一篇文献:地图中最短路径的搜索算法研究学生:李小坤 导师:董峦摘要:目前为止, 国内外大量专家学者对“最短路径问题”进行了深入的研究。本文通过理论分析, 结合实际应用,从各个方面较系统的比较广...

2021-09-23 17:52:00

屈绍航博客

如何把经纬网的点标到地图上

点,想必不可应该是批量操作的,那就找一个标准格式的GPX文件(GPS文件),用WORD或写字板打开,将<trkseg>……</trkseg>之间的数据全部清除,然后把你的数据一次性拷贝到里面去。尔后用批量搜索替换的办法,将每个坐标点都处理成标准格式的轨...

2021-09-23 17:52:06

叶子

地图一个圆圈一个点表达的是什么意思?

地图里面的那一个圆圈一个点标示的是自己当前的位置,因为地图一打开就会自动定位自己的当前的位置的,通过定位自己当前的位置想去哪里直接输入目的地就可以查找路线了,会提供 多条路线搜索结果,让用户自己挑选路线进行全程的导航。

2021-09-23 17:54:02

布鲁布鲁

arcgis如何打个点,在点上标注

2021-09-23 17:56:06

路还长别太狂

地图上某个点附近300公里范围怎么圈定

以这个点为圆心,300为半径画一个圆

2021-12-06 15:50:01

仰望星海

地图上已经定好位,也要搜索到,为什么地图上没有这个点?

看是不是标注的不精准再者,地图还没有精准到某个点,只是个大致范围

2022-02-12 13:50:01