Creates a node with key as ' i ' . If i is root , then it changes root . If parent of i is not created , then it creates parent first
void createNode ( int parent [ ] , int i , Node * created [ ] , Node * * root ) {