insertAtLeaf(tree,item):
| Input tree, item
| Output tree with item inserted
|
| if tree is empty then
| return new node containing item
| else if item < data(tree) then
| return insertAtLeaf(left(tree),item)
| else if item > data(tree) then
| return insertAtLeaf(right(tree),item)
| else
| return tree // avoid duplicates
| end if
|