private void StronglyConnectedCondensate <TVertex, TEdge>( IVertexAndEdgeListGraph <TVertex, TEdge> g) where TEdge : IEdge <TVertex> { var cg = g.CondensateStronglyConnected <TVertex, TEdge, AdjacencyGraph <TVertex, TEdge> >(); CheckVertexCount(g, cg); CheckEdgeCount(g, cg); CheckComponentCount(g, cg); CheckDAG(g, cg); }
private static void RunStronglyConnectedCondensateAndCheck <TVertex, TEdge>( [NotNull] IVertexAndEdgeListGraph <TVertex, TEdge> graph) where TEdge : IEdge <TVertex> { var condensedGraph = graph.CondensateStronglyConnected <TVertex, TEdge, AdjacencyGraph <TVertex, TEdge> >(); CheckVertexCount(graph, condensedGraph); CheckEdgeCount(graph, condensedGraph); CheckComponentCount(graph, condensedGraph); CheckDAG(condensedGraph); }
private static void RunStronglyConnectedCondensationAndCheck <TVertex, TEdge>( [NotNull] IVertexAndEdgeListGraph <TVertex, TEdge> graph) where TEdge : IEdge <TVertex> { IMutableBidirectionalGraph <AdjacencyGraph <TVertex, TEdge>, CondensedEdge <TVertex, TEdge, AdjacencyGraph <TVertex, TEdge> > > condensedGraph = graph.CondensateStronglyConnected <TVertex, TEdge, AdjacencyGraph <TVertex, TEdge> >(); Assert.IsNotNull(condensedGraph); CheckVertexCount(graph, condensedGraph); CheckEdgeCount(graph, condensedGraph); CheckComponentCount(graph, condensedGraph); CheckDAG(condensedGraph); }