static void Main(string[] args) { Console.Write("\nDemonstating Test Stub for Strongly Connected Component"); Console.Write("\n =======================\n"); CsNode<string, string> node1 = new CsNode<string, string>("node1"); CsNode<string, string> node2 = new CsNode<string, string>("node2"); CsNode<string, string> node3 = new CsNode<string, string>("node3"); CsNode<string, string> node4 = new CsNode<string, string>("node4"); CsNode<string, string> node5 = new CsNode<string, string>("node5"); List<CsNode<string, string>> nodes = new List<CsNode<string, string>>(); node1.addChild(node2, "edge12"); node1.addChild(node3, "edge13"); node2.addChild(node3, "edge23"); node2.addChild(node4, "edge24"); node3.addChild(node1, "edge31"); node5.addChild(node1, "edge51"); node5.addChild(node4, "edge54"); CsGraph<string, string> graph = new CsGraph<string, string>("Fred"); graph.addNode(node1); graph.addNode(node2); graph.addNode(node3); graph.addNode(node4); graph.addNode(node5); nodes.Add(node1); nodes.Add(node2); nodes.Add(node3); nodes.Add(node4); nodes.Add(node5); StronglyConnectedComponent T = new StronglyConnectedComponent(); List<string> scc=T.Tarjan(nodes); for (int i = 0; i < scc.Count; i++) Console.WriteLine("{0}:{1}", i + 1, scc[i]); Console.Read(); }