From d2b20368b916d6dfa9449db29221c8d429aa0745 Mon Sep 17 00:00:00 2001 From: Lalit Kumar Date: Wed, 4 Oct 2023 00:14:58 +0530 Subject: [PATCH] Create merge_two_linked_list --- merge_two_linked_list | 63 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 merge_two_linked_list diff --git a/merge_two_linked_list b/merge_two_linked_list new file mode 100644 index 0000000..4704f31 --- /dev/null +++ b/merge_two_linked_list @@ -0,0 +1,63 @@ +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +// link list node +class Node { + int key; + Node next; + + public Node(int key) { + this.key = key; + next = null; + } +} + +public class Main { + // return a newnode + public static Node newNode(int key) { + return new Node(key); + } + + // driver code + public static void main(String[] args) { + // let us create two sorted linked lists to test the above + // function. Created lists shall be + // a: 5->10->15->40 + // b: 2->3->20 + Node a = new Node(5); + a.next = new Node(10); + a.next.next = new Node(15); + a.next.next.next = new Node(40); + + Node b = new Node(2); + b.next = new Node(3); + b.next.next = new Node(20); + + List v = new ArrayList<>(); + while (a != null) { + v.add(a.key); + a = a.next; + } + + while (b != null) { + v.add(b.key); + b = b.next; + } + + Collections.sort(v); + Node result = new Node(-1); + Node temp = result; + for (int i = 0; i < v.size(); i++) { + result.next = new Node(v.get(i)); + result = result.next; + } + + temp = temp.next; + System.out.print("Resultant Merge Linked List is : "); + while (temp != null) { + System.out.print(temp.key + " "); + temp = temp.next; + } + } +}