合并两个升序链表
题目:将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的
提示:
- 两个链表的节点数目范围是
[0, 50] -100 <= Node.val <= 100l1和l2均按 非递减顺序 排列
思路:
dummy节点:(1)作为新链表的头节点 (2)解决链表头部的极端情况
代码:
1 let curr = new ListNode(); 2 let dummy = curr; 3 while(l1 !== null && l2 !== null){ 4 if(l1.val < l2.val){ 5 curr.next = l1; 6 l1 = l1.next; 7 }else { 8 curr.next = l2; 9 l2 = l2.next; 10 } 11 curr = curr.next; 12 } 13 if(l1 !== null){ 14 curr.next = l1; 15 } 16 if(l2 !== null){ 17 curr.next = l2; 18 } 19 return dummy.next;

浙公网安备 33010602011771号