This is the problem statement:
Implement the functions to insert and remove nodes in a Binary Search Tree (BST). Each node carries a student record (ID and name). Each node also has a left child, a right child and a parent, each maintained in the node class as a pointer. The BST has a root node, whose parent pointer is NULL. Nodes in the BST have the following properties:
1. Each node has a different ID (no two students can have the same ID, but names may be same).
2. The left child of a node has ID less than the ID of the node.
3. The right child of a node has ID greater than the ID of the node.
4. Each node has at most two children (a node with no children is a leaf node).
5. Each node has one parent, with the exception of root node, which has no parent.
I attached a rar file with files in it.
The [login to view URL] is already written for us, the insert and remove function must be written in the [login to view URL]