A Binary Search Tree is a node-based data structure where each node has at most two children, and every left child is smaller than its parent while every right child is larger.
Start at the root and compare the new value. Go left if smaller, right if larger, until an empty spot is found.
Same traversal logic as insert — return true if the value is found,
false if a null node is reached.
Three cases: leaf node (remove directly), one child (replace with child), two children (replace with in-order successor).
A sample BST — note how left children are always smaller than their parent.
For a deeper dive, visit the Wikipedia page on Binary Search Trees.