Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /////////////////////////// BST /////////////////
- template <typename T>
- struct node {
- T val;
- node<T>* left;
- node<T>* right;
- };
- template <typename T>
- class BST{
- node<T> *root;
- node<T>* makeEmpty(node<T>* p);
- node<T>* insert(T v, node<T>* p);
- node<T>* findMin(node<T>* p);
- node<T>* findMax(node<T>* p);
- node<T>* remove(T v, node<T>* p);
- void inOrder(node<T>* p);
- node<T>* find(node<T>* p, T v);
- public:
- BST();
- ~BST();
- void insert(T v);
- void search(T v);
- void remove(T v);
- void display();
- };
- ///////////////////// SET ///////////////////////
- template <typename T>
- class Set {
- public:
- Set();
- Set(const Set &source);
- Set& operator=(const Set &source);
- Set(Set &&source);
- Set& operator=(Set &&source);
- private:
- BST<T> bst_;
- public:
- T* insert(const T &value);
- const T* find(const T &value) const;
- T* find(const T &value);
- bool remove(const T &value);
- void display();
- public:
- class Iterator {
- };
- Iterator begin();
- Iterator end();
- };
- ////////////////////
- template <typename T>
- Set<T>::Set() {
- // BST<T> bst_;
- // CHODZI O TO //
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement