使用boost :: graph获得特定优势

Ami*_*hum 24 c++ boost boost-graph

我正在使用boost::graph,我有两个vertex_descriptor.在没有遍历所有边缘的情况下,获得它们之间边缘的最快方法是什么?

Ami*_*hum 44

好的,我发现了.boost::edge(u,v,g)返回pair<edge_descriptor, bool>,其中bool是所述边缘是否存在.所以在我的情况下,我知道它确实如此,所以我使用表达式:

boost::edge(u,v,g).first
Run Code Online (Sandbox Code Playgroud)

  • 实际上,如果你想要“bool”值,它应该是“boost::edge(u,v,g).second”... (3认同)
  • @tnull 因为我知道边存在并且我正在寻找边本身,`first` 是我需要的属性。 (2认同)

Jer*_*ock 5

还有一个功能boost::lookup_edge()boost/graph/lookup_edge.hpp; 该函数分派要么edge()out_edges()并根据您所使用的特定图形类型的搜索.