|
|
bool member(T e, node root) if root = nil, return false if root.data = e, return true if e < root.data return member(e, root.left) return member(e, root.right)
node * add(T e, node * root) if root = nil root = new node(data, nil, nil) or e < root.data root.left = add(e, root.left) or root.right = add(e, root.right) return root
Node remove(V v, Node root) if (root != null) if v < root.value root.left = remove(v, root.left) else if root.value < v root.right = remove(v, root.right) else if root.left != null root.left, root.value = extractMax(root.left) else if root.right != null root.right, root.value = extractMin(root.right) else root = null return root
This page last modified on 2010 November 16. |