Merge Two Sorted Lists: Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first two lists.
题意:合并两个有序的链表,并返回新的链表。
思路:使用双指针,分别指向两个链表,然后比较大小依次加入新的链表,最后将不为空的链表加入到新的链表尾部。
代码:
public ListNode mergeTwoLists(ListNode l1, ListNode l2) { ListNode p1= l1; ListNode p2= l2; ListNode fakeHead = new ListNode(0); ListNode p = fakeHead; while(p1!=null && p2!=null){ if(p1.val <= p2.val){ p.next = p1; p1 = p1.next; }else{ p.next = p2; p2 = p2.next; } p = p.next; } if(p1!=null) p.next = p1; if(p2!=null) p.next = p2; return fakeHead.next; }