Example #1
0
 public void TestDFS()
 {
     Graph g = new Graph(false, 6);
     g.Insert(1, 2);
     g.Insert(1, 5);
     g.Insert(1, 6);
     g.Insert(2, 3);
     g.Insert(2, 5);
     g.Insert(3, 4);
     g.Insert(5, 4);
     BFSResult bfsResult = g.DepthFirstSearchWithStack(1);
     List<SearchResult> result = bfsResult.SearchResult.Where(l => l.Status == ProcessStatus.AfterProcessVertex).ToList<SearchResult>();
     Assert.AreEqual(1, result[0].Vertex);
     Assert.AreEqual(2, result[1].Vertex);
     Assert.AreEqual(3, result[2].Vertex);
     Assert.AreEqual(4, result[3].Vertex);
     Assert.AreEqual(5, result[4].Vertex);
     Assert.AreEqual(6, result[5].Vertex);
 }