题解 | #合并两个排序的链表#
合并两个排序的链表
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 || list2 == null){ if(list1 == null){ return list2; }else if(list2 == null){ return list1; } } // 设置返回头 ListNode head = new ListNode(-1001); // 设置i ListNode i = head; // 双方都有数据时进行比较大小并改变next while(list1 != null && list2 != null){ if(list1.val > list2.val){ i.next = list2; i = i.next; list2 = list2.next; }else{ i.next = list1; i = i.next; list1 = list1.next; } } // 无数据时直接将另一方加入链表即可 if(list1 == null){ i.next = list2; }else{ i.next = list1; } return head.next; } }