|
|


|
|
|

|
|
|
add() and remove() manipulation operations.
size(), empty(), find(),
…
|
|
|
|
|
class BinaryTree<E> {
private class Node {
E value;
Node left, right;
}
}
private class Node {
E value;
Node children[N];
}
add(), remove() and member().

bool member(T e, node root) if root = nil, return false if root.data = e, return true if member(e, root.left), return true return member(e, root.right)

node add(T e, node root) return new node(e, nil, root)


n.
n.parent.left = null;
n could be the root.


node remove(node root)
if root.left ≠ nil
root.data = root.left.data
root.left = delete(root.left)
or root.right ≠ nil
root.data = root.right.data
root.right = delete(root.right)
or
root = nil
return root


pre-order-traversal(node root)
if root ≠ nil
process(root)
pre-order-traversal(root.left)
pre-order-traversal(root.right)
in-order-traversal(node root)
if root ≠ nil
in-order-traversal(root.left)
process(root)
in-order-traversal(root.right)
prost-order-traversal(node root)
if root ≠ nil
post-order-traversal(root.left)
post-order-traversal(root.right)
process(root)
| This page last modified on 25 March 2010. |