#include #include #include using namespace boost; typedef adjacency_list MyGraph; int main() { typedef graph_traits < MyGraph >::vertex_descriptor vertex_descriptor; typedef graph_traits < MyGraph >::edge_descriptor edge_descriptor; MyGraph g; vertex_descriptor v1 = add_vertex(g); vertex_descriptor v2 = add_vertex(g); vertex_descriptor v3 = add_vertex(g); add_edge(v1, v2, g); add_edge(v2, v3, g); std::cout << "Path of " << num_vertices(g) << " vertices and " << num_edges(g) << " edges.\n"; std::vector < edge_descriptor > disconnecting_set; std::cout << "The edge connectivity is " << edge_connectivity(g, std::back_inserter(disconnecting_set)) << "." << std::endl; add_edge(v2, v1, g); std::cout << "Added edge (" << v2 << "," << v1 << "): now there are " << num_edges(g) << " edges.\n"; std::cout << "The edge connectivity becomes " << edge_connectivity(g, std::back_inserter(disconnecting_set)) << "." << std::endl; return EXIT_SUCCESS; }