public override BinarySearchTreeNode <TKey, TValue> Search(BinarySearchTreeNode <TKey, TValue> root, TKey key) { return(Search_BST(root, key)); }
public override BinarySearchTreeNode <TKey, TValue> Delete(BinarySearchTreeNode <TKey, TValue> root, TKey key) { return(Delete_BST(root, key)); }
public override BinarySearchTreeNode <TKey, TValue> FindMax(BinarySearchTreeNode <TKey, TValue> root) { return(FindMax_BST(root)); }
[SpaceComplexity("O(1)", InPlace = true)] /* Notice that a new node is allocated for a new key, thus can be considered as O(Size(TreeNode))*/ public override BinarySearchTreeNode <TKey, TValue> Insert(BinarySearchTreeNode <TKey, TValue> root, BinarySearchTreeNode <TKey, TValue> newNode) { return(Insert_BST(root, newNode)); }
public override bool Update(BinarySearchTreeNode <TKey, TValue> root, TKey key, TValue value) { return(Update_BST(root, key, value)); }