public void SortedArrayToBSTTest() { var solution = new _108_ConvertSortedArrayToBinarySearchTree(); var result = solution.SortedArrayToBST(new int[] { -10, -3, 0, 5, 9 }); AssertHelper.AssertTree(new int?[] { 0, -3, 9, -10, null, 5 }, result); }
public void ConstructMaximumBinaryTree() { var solution = new _0654_MaximumBinaryTree(); var root = solution.ConstructMaximumBinaryTree(new int[] { 3, 2, 1, 6, 0, 5 }); AssertHelper.AssertTree(new int?[] { 6, 3, 5, null, 2, 0, null, null, 1 }, root); }
public void SortedListToBSTTest() { var solution = new _109_ConvertSortedListToBinarySearchTree(); var result = solution.SortedListToBST(TestHelper.GenerateList(new int[] { -10, -3, 0, 5, 9 })); AssertHelper.AssertTree(new int?[] { 0, -3, 9, -10, null, 5 }, result); }
public void InsertIntoBST_2() { var solution = new _0701_InsertIntoABinarySearchTree(); var result = solution.InsertIntoBST(null, 5); AssertHelper.AssertTree(new int?[] { 5 }, result); }
public void ConstructFromPrePost_1() { var solution = new _0889_ConstructBinaryTreeFromPreorderAndPostorderTraversal(); var result = solution.ConstructFromPrePost(new int[] { 1, 2, 4, 5, 3, 6, 7 }, new int[] { 4, 5, 2, 6, 7, 3, 1 }); AssertHelper.AssertTree(new int?[] { 1, 2, 3, 4, 5, 6, 7 }, result); }
public void BuildTreeTest() { var solution = new _106_ConstructBinaryTreeFromInorderAndPostorderTraversal(); var result = solution.BuildTree(new int[] { 9, 3, 15, 20, 7 }, new int[] { 9, 15, 7, 20, 3 }); AssertHelper.AssertTree(new int?[] { 3, 9, 20, null, null, 15, 7 }, result); }
public void RecoverTreeTest() { var solution = new _099_RecoverBinarySearchTree(); var root = TestHelper.GenerateTree(new int?[] { 1, 3, null, null, 2 }); solution.RecoverTree(root); AssertHelper.AssertTree(new int?[] { 3, 1, null, null, 2 }, root); }
public void InvertTreeTest() { var root = TestHelper.GenerateTree(new int?[] { 4, 2, 7, 1, 3, 6, 9 }); var solution = new _0226_InvertBinaryTree(); var newRoot = solution.InvertTree(root); AssertHelper.AssertTree(new int?[] { 4, 7, 2, 9, 6, 3, 1 }, newRoot); }
public void FlattenTest() { var solution = new _114_FlattenBinaryTreeToLinkedList(); var root = TestHelper.GenerateTree(new int?[] { 1, 2, 5, 3, 4, null, 6 }); solution.Flatten(root); AssertHelper.AssertTree(new int?[] { 1, null, 2, null, 3, null, 4, null, 5, null, 6 }, root); }
public void SerializeandDeserializeBinaryTreeTest() { var root = TestHelper.GenerateTree(new int?[] { 1, 2, 3, null, null, 4, 5 }); var solution = new _0297_SerializeandDeserializeBinaryTree(); var newRoot = solution.Deserialize(solution.Serialize(root)); AssertHelper.AssertTree(root, newRoot); }
public void TrimBSTTest_1() { var root = TestHelper.GenerateTree(new int?[] { 1, 0, 2 }); var solution = new _0669_TrimABinarySearchTree(); var newRoot = solution.TrimBST(root, 1, 2); AssertHelper.AssertTree(new int?[] { 1, null, 2 }, newRoot); }
public void LcaDeepestLeaves_1() { var root = TestHelper.GenerateTree(new int?[] { 1, 2, 3 }); var solution = new _1123_LowestCommonAncestorOfDeepestLeaves(); var result = solution.LcaDeepestLeaves(root); AssertHelper.AssertTree(new int?[] { 1, 2, 3 }, result); }
public void BalanceBST_1() { var root = TestHelper.GenerateTree(new int?[] { 1, null, 2, null, 3, null, 4, null, null }); var solution = new _1382_BalanceABinarySearchTree(); var result = solution.BalanceBST(root); AssertHelper.AssertTree(new int?[] { 3, 2, 4, 1 }, result); }
public void InsertIntoBST_1() { var root = TestHelper.GenerateTree(new int?[] { 4, 2, 7, 1, 3 }); var solution = new _0701_InsertIntoABinarySearchTree(); var result = solution.InsertIntoBST(root, 5); AssertHelper.AssertTree(new int?[] { 4, 2, 7, 1, 3, 5 }, result); }
public void IncreasingBST_1() { var root = TestHelper.GenerateTree(new int?[] { 5, 3, 6, 2, 4, null, 8, 1, null, null, null, 7, 9 }); var solution = new _0897_IncreasingOrderSearchTree(); var result = solution.IncreasingBST(root); AssertHelper.AssertTree(new int?[] { 1, null, 2, null, 3, null, 4, null, 5, null, 6, null, 7, null, 8, null, 9 }, result); }
public void DeleteNode_1() { var root = TestHelper.GenerateTree(new int?[] { 5, 3, 6, 2, 4, null, 7 }); var solution = new _0450_DeleteNodeInABST(); var result = solution.DeleteNode(root, 3); AssertHelper.AssertTree(new int?[] { 5, 4, 6, 2, null, null, 7 }, result); }
public void BstToGst_1() { var root = TestHelper.GenerateTree(new int?[] { 4, 1, 6, 0, 2, 5, 7, null, null, null, 3, null, null, null, 8 }); var solution = new _1038_BinarySearchTreeToGreaterSumTree(); var result = solution.BstToGst(root); AssertHelper.AssertTree(new int?[] { 30, 36, 21, 36, 35, 26, 15, null, null, null, 33, null, null, null, 8 }, result); }
public void BstToGst_2() { var root = TestHelper.GenerateTree(new int?[] { 5, 2, 13 }); var solution = new _1038_BinarySearchTreeToGreaterSumTree(); var result = solution.BstToGst(root); AssertHelper.AssertTree(new int?[] { 18, 20, 13 }, result); }
public void InsertIntoMaxTree_1() { var root = TestHelper.GenerateTree(new int?[] { 4, 1, 3, null, null, 2 }); var solution = new _0998_MaximumBinaryTreeII(); var result = solution.InsertIntoMaxTree(root, 5); AssertHelper.AssertTree(new int?[] { 5, 4, null, 1, 3, null, null, 2 }, result); }
public void SubtreeWithAllDeepest_1() { var root = TestHelper.GenerateTree(new int?[] { 3, 5, 1, 6, 2, 0, 8, null, null, 7, 4 }); var solution = new _0865_SmallestSubtreeWithAllTheDeepestNodes(); var result = solution.SubtreeWithAllDeepest(root); AssertHelper.AssertTree(new int?[] { 2, 7, 4 }, result); }
public void PruneTree_1() { var root = TestHelper.GenerateTree(new int?[] { 1, null, 0, 0, 1 }); var solution = new _0814_BinaryTreePruning(); var result = solution.PruneTree(root); AssertHelper.AssertTree(new int?[] { 1, null, 0, null, 1 }, result); }
public void SearchBST_1() { var root = TestHelper.GenerateTree(new int?[] { 4, 2, 7, 1, 3 }); var solution = new _0700_SearchInABinarySearchTree(); var result = solution.SearchBST(root, 2); AssertHelper.AssertTree(new int?[] { 2, 1, 3 }, result); }
public void ConvertBST_1() { var root = TestHelper.GenerateTree(new int?[] { 5, 2, 13 }); var solution = new _0538_ConvertBSTToGreaterTree(); var result = solution.ConvertBST(root); AssertHelper.AssertTree(new int?[] { 18, 20, 13 }, result); }
public void SerializeAndDeserialize_1() { var root = TestHelper.GenerateTree(new int?[] { 2, 1, 3 }); var solution = new _0449_SerializeAndDeserializeBST(); var result = solution.serialize(root); AssertHelper.AssertTree(new int?[] { 2, 1, 3 }, solution.deserialize(result)); }
public void RemoveLeafNodes_1() { var root = TestHelper.GenerateTree(new int?[] { 1, 2, 3, 2, null, 2, 4 }); var solution = new _1325_DeleteLeavesWithAGivenValue(); var result = solution.RemoveLeafNodes(root, 2); AssertHelper.AssertTree(new int?[] { 1, null, 3, null, 4 }, result); }
public void MergeTreesTest() { var root1 = TestHelper.GenerateTree(new int?[] { 1, 3, 2, 5 }); var root2 = TestHelper.GenerateTree(new int?[] { 2, 1, 3, null, 4, null, 7 }); var solution = new _0617_MergeTwoBinaryTrees(); var result = solution.MergeTrees(root1, root2); AssertHelper.AssertTree(new int?[] { 3, 4, 5, 5, 4, null, 7 }, result); }
public void BstFromPreorder_1() { var solution = new _1008_ConstructBinarySearchTreeFromPreorderTraversal(); var result = solution.BstFromPreorder(new int[] { 8, 5, 1, 7, 10, 12 }); AssertHelper.AssertTree(new int?[] { 8, 5, 10, 1, 7, null, 12 }, result); }