在boost:graph中设置顶点数

时间:2013-07-11 15:34:53

标签: boost boost-graph

给定一个空的boost :: graph g,我想设置此图中的顶点数,然后添加一些边。但是从文档中,我找不到相关的功能。我发现的所有示例都定义了初始化中顶点的大小(如图g(10)定义了一个包含10个顶点的图形)。但是我在定义图表时不知道大小。我想先定义一个Graph g,然后再设置大小。

2 个答案:

答案 0 :(得分:2)

你可能会尝试一些肮脏的技巧:

add_edge(0,4999,g);
remove_edge(0,4999,g);

它利用add_edge对adjacency_list的副作用,即BGL在必要时扩展顶点向量的事实。

答案 1 :(得分:1)

最简单的方法是为你想要的每个顶点调用boost :: add_vertex(graph)方法。

这是一个开始Using C++ Boost's Graph Library

的好地方

请注意,您无需逐个添加顶点。如果你关心的只是边缘,那么add_edge()将为你添加缺少的顶点。