21. Merge Two Sorted Lists

Solution Code

Java

/** * Definition for singly-linked list. * public class ListNode { *     int val; *     ListNode next; *     ListNode() {} *     ListNode(int val) { this.val = val; } *     ListNode(int val, ListNode next) { this.val = val; this.next = next; } * } */classSolution{publicListNodemergeTwoLists(ListNodelist1,ListNodelist2){if(list1==null){returnlist2;}if(list2==null){returnlist1;}ListNodemergedHead=null;ListNodetemporaryHead=null;while(list1!=null||list2!=null){if(list1==null&&list2!=null){ListNodenode=newListNode(list2.val);if(mergedHead==null){mergedHead=node;}else{temporaryHead.next=node;}temporaryHead=node;list2=list2.next;}elseif(list1!=null&&list2==null){ListNodenode=newListNode(list1.val);if(mergedHead==null){mergedHead=node;}else{temporaryHead.next=node;}temporaryHead=node;list1=list1.next;}else{if(list1.val<list2.val){ListNodenode=newListNode(list1.val);if(mergedHead==null){mergedHead=node;}else{temporaryHead.next=node;}temporaryHead=node;list1=list1.next;}else{ListNodenode=newListNode(list2.val);if(mergedHead==null){mergedHead=node;}else{temporaryHead.next=node;}temporaryHead=node;list2=list2.next;}}}returnmergedHead;}}

© 2023. All rights reserved.