#ifndef INC_08_TEAM_PROJECT_BINARYSEARCHTREE_H #define INC_08_TEAM_PROJECT_BINARYSEARCHTREE_H #include "BinaryTree.h" template class BinarySearchTree: public BinaryTree { private: BinaryTreeNode* _insert(BinaryTreeNode* nodePtr, BinaryTreeNode* newNode); BinaryTreeNode* _search(BinaryTreeNode* treePtr, const T& target) const; //BinaryNode* _remove(BinaryNode* nodePtr, const ItemType target, bool& success); public: void insert(const T& item); void remove(const T &item) { throw std::logic_error("Not implemented: BinarySearchTree.remove()"); }; bool search(const T& target, T& returnedItem) const; }; #endif //INC_08_TEAM_PROJECT_BINARYSEARCHTREE_H