private void FCANodeOfAnotherTreeTest() { TreeBinaryParentNode <int> tree2 = BuildParentTree.MinimalParentTree(new int[5] { 1, 1, 2, 3, 0 }); TreeBinaryParentNode <int> firstNode = (TreeBinaryParentNode <int>)tree.right; TreeBinaryParentNode <int> secondtNode = (TreeBinaryParentNode <int>)tree2.left; TreeBinaryParentNode <int> ancestor = commonAncestor(firstNode, secondtNode); Assert.Null(ancestor); }
private static void TreeBinaryParentNodeBuildingTest() { int[] array = new int[7] { 1, 5, 12, 4, 14, 28, 33 }; TreeBinaryParentNode <int> tree = BuildParentTree.MinimalParentTree(array); TreeBinaryParentNode <int> n = (TreeBinaryParentNode <int>)tree.left.right; TreeBinaryParentNode <int> s = successor(n.parent); Assert.Equal(12, s.value); Assert.Equal(n, s); TreeBinaryParentNode <int> sIt = successorIt(n.parent); Assert.Equal(12, sIt.value); Assert.Equal(n, sIt); TreeBinaryParentNode <int> sn = successor(n); Assert.Equal(4, sn.value); Assert.Equal(sn, tree); TreeBinaryParentNode <int> snIt = successorIt(n); Assert.Equal(4, snIt.value); Assert.Equal(snIt, tree); TreeBinaryParentNode <int> lastNode = (TreeBinaryParentNode <int>)tree.right.right; Assert.Null(successor(lastNode)); Assert.Null(successor(null)); Assert.Null(successorIt(lastNode)); Assert.Null(successorIt(null)); }