public void Delete_Single() { const int insertValue = 1; IBinarySearchTree<int> tree = new BinarySearchTree<int>(); tree.Insert(insertValue); Assert.IsTrue(tree.Find(insertValue)); Assert.IsTrue(tree.Delete(insertValue)); Assert.IsFalse(tree.Find(insertValue)); }
public void Delete_EntireArray() { int[] data = { 5, 2, 6, 3, 1, 4 }; int[] expected = { 1, 2, 3, 4, 5, 6 }; IBinarySearchTree<int> tree = new BinarySearchTree<int>(); foreach (int value in data) tree.Insert(value); int[] actualArray = tree.ToArray(); CollectionAssert.AreEqual(expected, actualArray); Assert.AreEqual(expected.Length, tree.Size); Assert.IsTrue(tree.Delete(1)); Assert.IsFalse(tree.Find(1)); Assert.IsTrue(tree.Delete(2)); Assert.IsFalse(tree.Find(2)); Assert.IsTrue(tree.Delete(3)); Assert.IsFalse(tree.Find(3)); Assert.IsTrue(tree.Delete(4)); Assert.IsFalse(tree.Find(4)); Assert.IsTrue(tree.Delete(5)); Assert.IsFalse(tree.Find(5)); Assert.IsTrue(tree.Delete(6)); Assert.IsFalse(tree.Find(6)); Assert.AreEqual(0, tree.Size); }
public void Insert_OneValue_ToArray() { IBinarySearchTree<int> tree = new BinarySearchTree<int>(); tree.Insert(1); int[] sortedArray = tree.ToArray(); Assert.IsTrue(tree.Find(1)); Assert.AreEqual(1, sortedArray.Length); Assert.AreEqual(1, sortedArray[0]); }
public void Insert_OneValue() { IBinarySearchTree<int> tree = new BinarySearchTree<int>(); tree.Insert(1); Assert.IsTrue(tree.Find(1)); }