Slug: tree-bst-02 · Paired reading: Chapter 19
Prompt
fn bst_delete(root: &mut Tree, target: i32) — delete target using
Option::take. Cases: leaf, one child (splice), two children (replace
value with inorder successor via take_min on the right subtree).