-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathReverseLinkedList.java
More file actions
41 lines (35 loc) · 868 Bytes
/
Copy pathReverseLinkedList.java
File metadata and controls
41 lines (35 loc) · 868 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
public class ReverseLinkedList {
public static void main(String[] args)
{
//preparing linked list
SinglyLinkedList<Integer> list=new SinglyLinkedList<Integer>(0);
list.addNodeToTail(1);
list.addNodeToTail(2);
list.addNodeToTail(3);
list.addNodeToTail(4);
list.displayList();
System.out.println();
Result output=reverseLinkedList(list);
output.returnNode.setNextNode(null);
output.head.displayList();
}
public static Result reverseLinkedList(SinglyLinkedList<Integer> node)
{
Result res=new Result();
if (node.getNextNode()==null)
{
res.head=node;
res.returnNode=node;
return res;
}
res=reverseLinkedList(node.getNextNode());
res.returnNode.setNextNode(node);
res.returnNode=node;
return res;
}
static class Result
{
SinglyLinkedList<Integer> head;
SinglyLinkedList<Integer> returnNode;
}
}