typedef int KeyType; struct Node { KeyType key; struct Node* parent; struct Node* leftChild; struct Node* rightChild; }; struct Node* search(KeyType key); struct Node* min(); struct Node* max(); int insert(KeyType key); int remove(KeyType key); //--------------------------------------------- void beforeFirst(); struct Node* next(); bool hasNext();