xyz Interview Question
Software Engineer / DevelopersCountry: United States
Interview Type: In-Person
This is a simple java code:
ReverseLeftNodeOfBT(Node node)
{
if (node==null)
return;
Node temp=node.right;
ReverseLeftNodeOfBT(node.left);
node.left.right=temp;
node.right=null;
}
I am assuming it will be like convert:
from:
1
/\
2 3
/ \
4 5
/ \
6 7
/ \
8 9
To:
8
/\
6 9
/ \
4 7
/ \
2 5
/ \
1 3
Java code:
public static void ReverseLeftNode(Node node)
{
if(node.left == null)
{
head = node;
return;
}
Node temp = node.right;
ReverseLeftNode(node.left);
node.left.right = temp;
node.left.left = node;
}
note: some modification in one of the answers above.
- albertchenyu February 24, 2015