Tuesday, March 22, 2016

Reverse a LinkedList using recursion

public void reverse()
{
Node newNode = null;
head = method(head,newNode);
}

private Node method(Node old,Node newNode)
{
if(old == null)
{
return null;
}
else
{
Node temp = method(old.getLink(),newNode);
if(temp == null)
{
newNode = old;
return newNode;
}
else
{
newNode = temp;
old.setLink(null);
while(temp.getLink() != null)
{
temp = temp.getLink();
}
temp.setLink(old);
return newNode;
}
}
}

No comments:

Post a Comment