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.
Example:Input: 1->2->4, 1->3->4Output: 1->1->2->3->4->4
难度:easy
题目:合并两个列表并返回新的列表。新列表由两个列表的片断组成。
思路:直接遍历合并
Runtime: 6 ms, faster than 100.00% of Java online submissions for Merge Two Sorted Lists.Memory Usage: 30.5 MB, less than 44.63% of Java online submissions for Merge Two Sorted Lists.
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode(int x) {val = x;}
* }
*/
class Solution {
public ListNode mergeTwoLists(ListNode l1, ListNode l2) {
ListNode head = new ListNode(0), ptr = head;
while (l1 != null && l2 != null) {
if (l1.val > l2.val) {
ptr.next = l2;
ptr = l2;
l2 = l2.next;
} else {
ptr.next = l1;
ptr = l1;
l1 = l1.next;
}
}
ptr.next = (l1 != null) ? l1 : l2;
return head.next;
}
}