示例#1
0
 public void BFS_MultiSource_Test()
 {
     var sources = new HashSet<int>() { 0, 3 };
     BreadthFirstPaths BFS = new BreadthFirstPaths(basicGraph, sources);
     Assert.IsTrue(BFS.HasPathTo(3));
     Assert.IsFalse(BFS.HasPathTo(8));
     var path = BFS.PathTo(7);
     var SB = new StringBuilder();
     foreach (int v in path)
     {
         SB.Append(v.ToString());
     }
     Assert.AreEqual("027", SB.ToString());
     Stack<int> path4 = (Stack<int>)BFS.PathTo(4); //We know that returned type is an stack
     Assert.AreEqual(3, path4.Pop());
 }
示例#2
0
 public void BFS_Test()
 {
     BreadthFirstPaths BFS = new BreadthFirstPaths(basicGraph, 0);
     Assert.IsTrue(BFS.HasPathTo(3));
     Assert.IsFalse(BFS.HasPathTo(8));
     var path = BFS.PathTo(7);
     var SB = new StringBuilder();
     foreach (int v in path)
     {
         SB.Append(v.ToString());
     }
     Assert.AreEqual("027", SB.ToString());
 }