题解 | #合并两个排序的链表#
合并两个排序的链表
https://www.nowcoder.com/practice/d8b6b4358f774294a89de2a6ac4d9337
/* public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } }*/ public class Solution { public ListNode Merge(ListNode list1, ListNode list2) { if (list1 == null) { return list2; } if (list2 == null) { return list1; } ListNode mergedHead; if (list1.val <= list2.val) { mergedHead = list1; list1 = list1.next; } else { mergedHead = list2; list2 = list2.next; } ListNode cur = mergedHead; while ( list1 != null || list2 != null ) { if (list1 == null) { cur.next = list2; return mergedHead; } if (list2 == null) { cur.next = list1; return mergedHead; } if (list1.val <= list2.val ) { cur.next = list1; cur = list1; list1 = list1.next; } else { cur.next = list2; cur = list2; list2 = list2.next; } } return mergedHead; } }