A binary search tree with N nodes has N + 1 null references, half the space allocated in a binary search tree for link information is wasted. Suppose that if a node has a null left child, we make its left child link to its inorder predecessor, and if a node has a null right child, we make its right child link to its inorder successor. This is known as a threaded tree, and the extra links are called threads.
a. How can we distinguish threads from real children links?
b. Design the routines to perform insertion and deletion into a tree threaded in the manner described above.