public void TestCommonAncestor() { UnbalancedBinaryTree<int> t = new UnbalancedBinaryTree<int>(); t.Insert(4); t.Insert(2); t.Insert(3); t.Insert(1); t.Insert(6); t.Insert(5); t.Insert(7); Assert.AreEqual(4, t.FindCommonAncestor(t.Search(3), t.Search(5)).Item); Assert.AreEqual(4, t.FindCommonAncestor(t.Search(3), t.Search(6)).Item); }
public void TestDeleteNodeWithNoChildren() { UnbalancedBinaryTree<int> tree = new UnbalancedBinaryTree<int>(); tree.Insert(2); tree.Insert(1); tree.Insert(7); tree.Insert(4); tree.Insert(8); tree.Insert(3); tree.Insert(6); tree.Insert(5); tree.Delete(tree.Search(3)); Assert.AreEqual(2, tree.Root.Item); Assert.AreEqual(1, tree.Root.Left.Item); Assert.AreEqual(7, tree.Root.Right.Item); Assert.AreEqual(4, tree.Root.Right.Left.Item); Assert.AreEqual(8, tree.Root.Right.Right.Item); Assert.AreEqual(6, tree.Root.Right.Left.Right.Item); Assert.AreEqual(5, tree.Root.Right.Left.Right.Left.Item); }
public void TestSearch() { UnbalancedBinaryTree<string> tree = new UnbalancedBinaryTree<string>(); tree.Insert("Test 3"); tree.Insert("Test 2"); tree.Insert("Test 1"); tree.Insert("Test 5"); tree.Insert("Test 4"); Assert.AreEqual("Test 5", tree.Search("Test 5").Item); Assert.IsNull(tree.Search("Test 6")); }