A* 搜索算法——图形搜索算法:从给定起点到给定终点计算出路径。其中使用了一种启发式的估算,为每个节点估算通过该节点的最佳路径,并以之为各个地点排定次序。算法以得到的次序访问这些节点。因此,A*搜索算法是最佳优先搜索的范例。
该算法综合了最良优先搜索和Dijkstra算法的优点:在进行启发式搜索提高算法的效率的同时,可以保证找到一条最优路径。
在此算法中,如果以g(n)表示从起点到当前顶点n的实际距离,h(n)表示 当前顶点n到目标顶点的估算距离,那么A*算法的估算函数为:f(n) = g(n) + h(n);f(n)代表了该节点的综合预估值,值越小,到达目标的成本就越小,所以访问的时候尽量优先考虑最小的。h(n)值可以采用欧几里得距离、曼哈顿距离、切比雪夫距离等公式计算而来。