Preventing parallel edge creation
Hi all, I was looking for a way to prevent adding of parallel edges in the graph i.e. I would like to create a graph that is not a multigraph. Now I do that manually but that is quite prone to bugs. Is this possible to do this with graph tool in any way? The option I would like is the one like the option that boost graph has i.e. graph_traits<adjacency_list>::edge_parallel_category that can be found on: http://www.boost.org/doc/libs/develop/libs/graph/doc/adjacency_list.html Thanks! Aleks
What about removing all the parallel edges after creating the graph? On Thu, Jul 20, 2017 at 7:30 PM, Aleksandar Trifunovic <akstrfn@gmail.com> wrote:
Hi all,
I was looking for a way to prevent adding of parallel edges in the graph i.e. I would like to create a graph that is not a multigraph. Now I do that manually but that is quite prone to bugs. Is this possible to do this with graph tool in any way?
The option I would like is the one like the option that boost graph has i.e. graph_traits<adjacency_list>::edge_parallel_category that can be found on: http://www.boost.org/doc/libs/develop/libs/graph/doc/adjacency_list.html
Thanks! Aleks
_______________________________________________ graph-tool mailing list graph-tool@skewed.de https://lists.skewed.de/mailman/listinfo/graph-tool
-- Snehal M. Shekatkar Pune India
On 20.07.2017 15:00, Aleksandar Trifunovic wrote:
I was looking for a way to prevent adding of parallel edges in the graph i.e. I would like to create a graph that is not a multigraph. Now I do that manually but that is quite prone to bugs. Is this possible to do this with graph tool in any way?
You can check for the existence of an edge with Graph.edge(), and you can use Graph.edge(s, t, add_missing=True) to fetch edges or add missing ones if they do not yet exist. Alternatively, you can remove parallel edges a posteriori with the function remove_parallel_edges().
The option I would like is the one like the option that boost graph has i.e. graph_traits<adjacency_list>::edge_parallel_category that can be found on: http://www.boost.org/doc/libs/develop/libs/graph/doc/adjacency_list.html <http://www.boost.org/doc/libs/develop/libs/graph/doc/adjacency_list.html>
Something like this would require changing the underlying graph data structure in ways that would significantly degrade the performance of most algorithms. Best, Tiago -- Tiago de Paula Peixoto <tiago@skewed.de>
participants (3)
-
Aleksandar Trifunovic -
Snehal Shekatkar -
Tiago de Paula Peixoto