public void IsCyclic_True_01() { var n1 = new GraphNode("1"); var n2 = new GraphNode("2"); n1.Neighbors = new[] { n2 }; n2.Neighbors = new[] { n1 }; var graph = new Graph(new[] { n1, n2 }); Assert.IsTrue(graph.IsCyclic()); }
public void IsCyclic_False_03() { var n1 = new GraphNode("1"); var n2 = new GraphNode("2"); var n3 = new GraphNode("3"); n1.Neighbors = new[] { n2, n3 }; n2.Neighbors = new[] { n3 }; var graph = new Graph(new[] { n1, n2, n3 }); Assert.IsFalse(graph.IsCyclic()); }
public void IsCyclic_True_04() { var n1 = new GraphNode("1"); var n2 = new GraphNode("2"); var n3 = new GraphNode("3"); var n4 = new GraphNode("4"); n1.Neighbors = new[] { n2 }; n3.Neighbors = new[] { n4 }; n4.Neighbors = new[] { n3 }; var graph = new Graph(new[] { n1, n2, n3, n4 }); Assert.IsTrue(graph.IsCyclic()); }