Untitled
unknown
plain_text
4 years ago
724 B
9
Indexable
#ifndef BINARYTREE_H
#define BINARYTREE_H
using namespace std;
template<class T>
struct NodeType {
T key;
NodeType<T> *left;
NodeType<T> *right;
};
template<class T>
class BinaryTree {
public:
BinaryTree();
~BinaryTree();
void freeNodes(NodeType<T>* &tree);
void insert(T &key);
void insertNode(NodeType<T>* &tree, T &key);
void deleteItem(T &key);
void retrieve(NodeType<T>* &tree, T &item, bool &found) const;
void getPredecessor(NodeType<T>* &tree, T &item);
void deleteNode(NodeType<T>* &tree, T &item);
void preOrder() const;
void inOrder() const;
void postOrder() const;
int getLength() const;
private:
NodeType<T> *root;
int length;
};
#endifEditor is loading...