[prev] [index] [next]

New Binary Search Tree ADT

Now called simply Tree, and defined as:

// Item, Key, Node, Link, Tree types as before

// operations on keys
#define cmp(k1,k2) ((k1) - (k2))
#define lt(k1,k2) (cmp(k1,k2) < 0)
#define eq(k1,k2) (cmp(k1,k2) == 0)
#define gt(k1,k2) (cmp(k1,k2) > 0)

// standard tree operations
Tree newTree();
Tree TreeInsert(Tree, Item);
Tree TreeDelete(Tree, Key);
int  TreeFind(Tree, Key);