// ************************************************************************
// For today's lab you are to write and test each of the following
// functions in the order listed
// ************************************************************************

//TODO #1
// returns true if data is in the tree; otherwise, false is returned
bool bstIsIn (TreeNodePtr psRoot, int data);

//TODO #2
// returns a pointer to the node if data is in the tree; otherwise,
// return NULL
TreeNodePtr bstFindNode (TreeNodePtr psRoot, int data);

//TODO #3
// returns a pointer to the parent of the node in the tree
// (NULL if no parent exists)
TreeNodePtr bstFindParent (TreeNodePtr psRoot, TreeNodePtr psNode);

//TODO #4
// returns the level of a node
int bstFindLevel (TreeNodePtr psRoot, TreeNodePtr psNode);

//TODO #5
// insert data into the tree recursively
void bstInsertRecursive (TreeNodePtr *hsRoot, int data);

//TODO #6

// write a function to copy a binary tree and return a pointer
// to the copied tree. You write the prototype and the function.