Dijkstra 算法是一种用于寻找图中最短路径的算法。search 函数使用 Dijkstra 算法查找从起点到终点的最短路径,并返回该路径。
该函数返回一个对象,包含以下属性:
const graph = {
'A': { 'B': 1, 'C': 3 },
'B': { 'A': 1, 'C': 1, 'D': 2 },
'C': { 'A': 3, 'B': 1, 'D': 1 },
'D': { 'B': 2, 'C': 1 }
};
const result = Yuka.search('A', 'D', graph);
console.log(result.path); // ['A', 'B', 'C', 'D']
console.log(result.distance); // 3
当起点或终点不存在于图中时,该函数将抛出一个异常 "Node not found"。
该函数依赖于 Yuka.js 中的 priority queue 和 result helper 函数。