BidirectionalGraph

The BidirectionalGraph<TVertex, TEdge> provides an efficient data structure to access the out edges and the in edges of a vertex of sparse directed graphs. This class is mutable, serializable, cloneable and can be constructed in many different ways. Internally, the data structure keeps a dictionary from TVertex to a unordered list of TEdge elements.

var graph = new BidirectionalGraph<int, Edge<int>>();
...
foreach(var vertex in graph.Vertices)
    foreach(var edge in graph.InEdges(vertex))
        Console.WriteLine(edge);


If you only need to access out-edges, consider using the AdjacencyGraph, as it uses half the memory.

Last edited Mar 29, 2009 at 3:33 PM by pelikhan, version 1

Comments

No comments yet.