public void IsBinarySearchTree3_OutOfOrderLinkedListTest() { var root = new BinaryTreeNode(50); root.InsertRight(70).InsertRight(60).InsertRight(80); var result = IsBinarySearchTree3(root); Assert.False(result); }
public void IsBalanced_TreeIsLinkedListTest() { var root = new BinaryTreeNode(1); root.InsertRight(2).InsertRight(3).InsertRight(4); var result = IsBalanced(root); Assert.True(result); }
public void FindSecondLargest_AscendingLinkedListTest() { var root = new BinaryTreeNode(50); root.InsertRight(60).InsertRight(70).InsertRight(80); var actual = FindSecondLargest(root); var expected = 70; Assert.Equal(expected, actual); }
public void IsBalanced_LeafHeightsDifferByTwoTest() { var root = new BinaryTreeNode(6); root.InsertLeft(1); root.InsertRight(0).InsertRight(7).InsertRight(8); var result = IsBalanced(root); Assert.False(result); }
public void IsBalanced_BothLeavesAtTheSameDepthTest() { var root = new BinaryTreeNode(3); root.InsertLeft(4).InsertLeft(1); root.InsertRight(2).InsertRight(9); var result = IsBalanced(root); Assert.True(result); }
public void FindSecondLargest_LargestHasLeftChildTest() { var root = new BinaryTreeNode(50); var a = root.InsertLeft(30); a.InsertLeft(10); a.InsertRight(40); root.InsertRight(70).InsertLeft(60); var actual = FindSecondLargest(root); var expected = 60; Assert.Equal(expected, actual); }
public void FindSecondLargest_SecondLargestIsRootNodeTest() { var root = new BinaryTreeNode(50); var a = root.InsertLeft(30); a.InsertLeft(10); a.InsertRight(40); root.InsertRight(70); var actual = FindSecondLargest(root); var expected = 50; Assert.Equal(expected, actual); }
public void IsBalanced_BothSubTreesSuperbalancedTest() { var root = new BinaryTreeNode(1); root.InsertLeft(5); var b = root.InsertRight(9); b.InsertLeft(8).InsertLeft(7); b.InsertRight(5); var result = IsBalanced(root); Assert.False(result); }
public void IsBalanced_FullTreeTest() { var root = new BinaryTreeNode(5); var a = root.InsertLeft(8); var b = root.InsertRight(6); a.InsertLeft(1); a.InsertRight(2); b.InsertLeft(3); b.InsertRight(4); var result = IsBalanced(root); Assert.True(result); }
public void IsBinarySearchTree3_BothSubtreesValidTest() { var root = new BinaryTreeNode(50); var a = root.InsertLeft(30); a.InsertLeft(20); a.InsertRight(60); var b = root.InsertRight(80); b.InsertLeft(70); b.InsertRight(90); var result = IsBinarySearchTree3(root); Assert.False(result); }
public void IsBinarySearchTree3_ValidFullTreeTest() { var root = new BinaryTreeNode(50); var a = root.InsertLeft(30); a.InsertLeft(10); a.InsertRight(40); var b = root.InsertRight(70); b.InsertLeft(60); b.InsertRight(80); var result = IsBinarySearchTree3(root); Assert.True(result); }
public void FindSecondLargest_LargestHasLeftSubtreeTest() { var root = new BinaryTreeNode(50); var a = root.InsertLeft(30); a.InsertLeft(10); a.InsertRight(40); var b = root.InsertRight(70).InsertLeft(60); b.InsertLeft(55).InsertRight(58); b.InsertRight(65); var actual = FindSecondLargest(root); var expected = 65; Assert.Equal(expected, actual); }
public void FindSecondLargest_FindSecondLargestTest() { var root = new BinaryTreeNode(50); var a = root.InsertLeft(30); a.InsertLeft(10); a.InsertRight(40); var b = root.InsertRight(70); b.InsertLeft(60); b.InsertRight(80); var actual = FindSecondLargest(root); var expected = 70; Assert.Equal(expected, actual); }