#2
zza140060452016-08-23 17:32
|
在调用boost图库中crauser_et_al_shortest_paths最短路径算法时,如何获取前驱点列表,或者说,如何获取到其最短路径所经过的节点或边线?
typedef property_map<Graph_Mpi, vertex_index_t>::const_type IndexMap;
typedef iterator_property_map<vector<int>::iterator, IndexMap> DistanceMap;
typedef iterator_property_map<vector<graph_traits<Graph_Mpi>::vertex_descriptor>::iterator, IndexMap> Parent_Mpi;
crauser_et_al_shortest_paths(g, start, dummy_property_map(), distance);
对于dijkstra_shortest_paths我知道怎么获取,dijkstra_shortest_paths(g, start, predecessor_map(&parent[0]).distance_map(&dist[0]))这样就可以了,但是对于crauser_et_al_shortest_paths算法我搞了几天都不知道怎么获取前驱点列表,或者最短路径所经过的节点或边线。求助大神帮忙...