How come there is no routine to remove multiple vertices at the same time in the graph? There is only remove_vertex() which is very costly if the vertices are vecS
.
In boost/graph/detail/adjacency_list.hpp remove_vertex_dispatch()
starting line # 1966 routine, it erases the given node, then re-indexes the edges. Can another routine be added that takes say, the indexes of the vertices to be removed and they're erased in one shot (how? can be discussed) and the re-indexing happens just once?
I understand using listS makes it constant time, but not all algorithms work for listS so that's out of the question.