#include "tree.h" #include using namespace std; //#define DEBUG #define A "Aliens" #define B "Clerks" #define C "Die Hard" #define D "Enemy of the State" #define E "Gladiator" #define F "Happy Gilmore" #define G "Kill Bill Volume 1" #define H "Kill Bill Volume 2" #define I "Matrix" #define J "Meet the Parents" #define K "Pirates of the Caribbean" #define L "Silence of the Lambs" #define M "Spaceballs" #define N "Star Wars" #define O "Terminator" #define P "The Lord of the Rings" #define Q "The Usual Suspects" #define R "Top Gun" void printOrders ( Tree* tree ) { cout << "Preorder = "; tree->preOrder ( ); cout << "Inorder = "; tree->inOrder ( ); cout << "Postorder = "; tree->postOrder ( ); } int main ( ) { //------------------------------------------------------------------------ // Extra Credit Testing Tree tree3; tree3.insert ( C ); tree3.insert ( O ); tree3.insert ( G ); tree3.insert ( K ); tree3.insert ( P ); tree3.insert ( N ); tree3.insert ( E ); tree3.insert ( I ); tree3.insert ( B ); tree3.insert ( Q ); tree3.insert ( L ); tree3.insert ( D ); tree3.insert ( A ); tree3.insert ( M ); tree3.insert ( F ); tree3.insert ( R ); tree3.insert ( J ); tree3.insert ( H ); cout << "EC test 1" << endl; tree3.remove ( K ); printOrders ( &tree3 ); cout << "----------------------------------------------------" << endl; cout << "EC test 2" << endl; tree3.remove ( D ); printOrders ( &tree3 ); cout << "----------------------------------------------------" << endl; cout << "EC test 3" << endl; tree3.remove ( A ); printOrders ( &tree3 ); cout << "----------------------------------------------------" << endl; cout << "EC test 4" << endl; tree3.remove ( G ); printOrders ( &tree3 ); cout << "----------------------------------------------------" << endl; cout << "EC test 5" << endl; tree3.remove ( I ); tree3.remove ( M ); tree3.remove ( B ); tree3.remove ( E ); printOrders ( &tree3 ); cout << "----------------------------------------------------" << endl; return 1; }