예제 #1
0
파일: source.cs 프로젝트: mygaraj/Interview
 void DenyCircularDependency(BinaryThree value)
 {
     if (Contains(value))
     {
         HandleCircularDependency();
     }
 }
예제 #2
0
파일: test.cs 프로젝트: mygaraj/Interview
 public void GetDepthEmptyTest()
 {
     BinaryThree tree = new BinaryThree();
     int emptyThreeDepth = tree.GetMaxDepth();
     int zero = 0;
     Assert.AreEqual(zero, emptyThreeDepth);
 }
예제 #3
0
파일: source.cs 프로젝트: mygaraj/Interview
 bool Contains(BinaryThree test)
 {
     if (Equals(this, test) || Equals(Left, test) || Equals(Right, test))
     {
         return true;
     }
     if (Left.Contains(test) || Right.Contains(test))
     {
         return true;
     }
     return false;
 }
예제 #4
0
파일: test.cs 프로젝트: mygaraj/Interview
 public void GetDepthTwoBranchesTest()
 {
     BinaryThree twoBranchesTree = new BinaryThree() { Left = new BinaryThree(), Right = new BinaryThree() };
     twoBranchesTree.GetMaxDepth();
 }
예제 #5
0
파일: test.cs 프로젝트: mygaraj/Interview
 public void GetDepthOneBranchTest()
 {
     BinaryThree oneBranchTree = new BinaryThree() { Left = new BinaryThree() };
     int oneBranchThreeDepth = oneBranchTree.GetMaxDepth();
     Assert.AreEqual(1, oneBranchThreeDepth);
 }
예제 #6
0
파일: test.cs 프로젝트: mygaraj/Interview
 public void CircularDependencyTest()
 {
     BinaryThree tree = new BinaryThree();
     tree.Left = new BinaryThree();
     tree.Right = tree.Left;
 }