将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 

示例:

输入:1->2->4, 1->3->4
输出:1->1->2->3->4->4

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/merge-two-sorted-lists
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

 

/**
 * Definition for singly-linked list.
 * function ListNode(val) {
 *     this.val = val;
 *     this.next = null;
 * }
 */
/**
 * @param {ListNode} l1
 * @param {ListNode} l2
 * @return {ListNode}
 */
var mergeTwoLists = function(l1, l2) {
        // 2链表 -> 1链表
    let result = new ListNode(0)
    let xc = result
    while(l1 && l2 ){
        if(l1.val < l2.val) {
               xc.next = new ListNode(l1.val)
            l1 = l1.next
        } else {
              xc.next = new ListNode(l2.val)
            l2 = l2.next
        }
        xc = xc.next
    }
    if( l1 ) {
        xc.next = l1
    }
    if( l2 ) {
        xc.next = l2
    }
    return result.next

};