路径搜索算法比较多。 主要算法都有:
广度优先算法:
深度优先搜索:
Dijkstra算法:
A*(启发式搜索):
广度优先和 Dij本质上都是贪心算法,但是对各个节点一视同仁,理论上的图可以认为所有的节点没有区别,但实际中却不是的。
而A*算法有一定的评估思想,在大部分情况下,可能会得出更快的结构。
为什么A*得到的不是最优解,因为评估值可能出差很大,导致搜索顺序反而错了。
启发(提高速度)、预估(降低准确性)。
路径搜索算法比较多。 主要算法都有:
广度优先算法:
深度优先搜索:
A*(启发式搜索):
广度优先和 Dij本质上都是贪心算法,但是对各个节点一视同仁,理论上的图可以认为所有的节点没有区别,但实际中却不是的。
而A*算法有一定的评估思想,在大部分情况下,可能会得出更快的结构。
为什么A*得到的不是最优解,因为评估值可能出差很大,导致搜索顺序反而错了。
启发(提高速度)、预估(降低准确性)。