rustworkx.digraph_astar_shortest_path#
- digraph_astar_shortest_path(graph, node, goal_fn, edge_cost_fn, estimate_cost_fn, /)#
计算 PyDiGraph 的 A* 最短路径
- Parameters:
graph (PyDiGraph) – 要使用的输入图
node (int) – 要从中计算路径的节点索引
goal_fn – 一个Python可调用对象,该对象将接收1个参数,一个节点的数据对象,并返回一个布尔值,若该节点是终点节点则返回True。
edge_cost_fn – 一个 Python 可调用对象,接受 1 个参数(一个边的数据对象),并返回表示该边成本的浮点数。该值必须为非负数。
estimate_cost_fn – 一个 Python 可调用对象,将接收 1 个参数,即节点的数据对象,并返回一个浮点数,表示下一节点的估计成本。返回值必须为非负数。为使算法找到实际最短路径,该估计值应当是可接受的,这意味着它不应高估到达最近目标节点的实际成本。
- Returns:
计算得到的从起点节点到终点节点的最短路径,以节点索引列表形式呈现。
- Return type:
- Raises:
值错误 - 当提供的边权重包含NaN或负值时。