题解 | #合并两个排序的链表#
合并两个排序的链表
http://www.nowcoder.com/practice/d8b6b4358f774294a89de2a6ac4d9337
用一个新的链表来将两个链表的元素合并。如果list1的值<=list2,就插入list1的值,否则插入list2的值;最后将剩余部分补齐即可
public ListNode merge2(ListNode list1,ListNode list2) {
ListNode head = new ListNode(-1);
ListNode curr = head;
while(list1 != null && list2 != null){
if(list1.val <= list2.val){
curr.next = list1;
list1 = list1.next;
}else{
curr.next = list2;
list2 = list2.next;
}
curr = curr.next;
}
//将剩余部分补充到curr当中
curr.next = list1 != null ? list1: list2;
return head;
}