The teacher gave us this code that inserts a node in a binary search tree, but I am not sure what the $ z.p = y$ instruction does. wouldn’t the algorithm work without it?

`abr_insert(T, z) //z is the node that must be inserted { y = NULL; x = T.root; while(x != NULL) { y = x; if(z.key < x.key) x = x.left; else x = x.right; } z.p = y; //here is the instruction that I don't understand if(y = NULL) T.root = z; else if(z.key < y,key) y.left = z; else y.right = z; } `