Binary Search Tree
Binary Search Trees are binary trees with a constraint that the left subtree has values less than the current node and right subtree has values greater than the current node over all nodes.
This code implementation takes care of creating BST, checking if it is a BST, BST deletion operations.