rendered paste bodystruct treenode {
treenode *leftPtr;
char data[40];
treenode *rightPtr;
int CompareTo(treenode &compNode) {
return strcmp(data, compNode.data);
}
treenode() {};
};
class Tree {
public:
Tree();
Tree(char[40]);
~Tree();
void insertNode( treenode *&, char[40]);
void preOrderTraversal(treenode *);
void inOrderTraversal(treenode *);
void postOrderTraversal(treenode *);
void findNode(treenode *, char[40] ,treenode* , treenode *&, treenode *&);
void deleteItem(char[40]);
treenode*& Root() {return rootPtr;}
private:
treenode *rootPtr;
void DeleteHelper(treenode *);
void DeleteNode(treenode *&);
void Delete(treenode * & tree, char data[40], bool & found);
void GetPredecessor(treenode *, char[40]);
};