将reverse_graph
作为参数传递给Dijkstra的正确方法是什么?我希望实现这样的目标:
graph_t G;
vertex_descriptor u;
dijkstra_shortest_paths(G, u,
predecessor_map(get(vertex_predecessor,G))
.distance_map(get(vertex_distance,G))
.weight_map(get(edge_weight,G));
使用参数作为反向图形适配器:
reverse_graph<graph_t> R(G);
问题在于直截了当的猜测不起作用:
dijkstra_shortest_paths(R,u,
predecessor_map(get(vertex_predecessor,R))
.distance_map(get(vertex_distance,R))
.weight_map(get(edge_weight,R)));
对于反向图表,增强文档页面非常节俭...我设法将其缩小到访问R
边缘的问题,我认为,因为这有效:
print_graph(R,get(vertex_name,R));
但这不是:
print_graph(R,get(edge_weight,R));