Populate Inorder Successor for all nodes
Given a Binary Tree where each node has the following structure, write a function to populate the next pointer for all nodes. The next pointer for every node should be set to point to inorder successor.
struct node
{
int data;
struct node* left;
struct node* right;
struct node* next;
}
Initially, all next pointers have NULL values. Your function should fill these next pointers so that they point to inorder successor.
class Solution {
Node prev = null;
public void populateInOrder(Node root) {
if (root == null)
return;
populateInOrder(root.left);
if (prev != null)
prev.next = root;
prev = root;
populateInOrder(root.right);
}
}
Last updated