合并两个排序的链表
输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的。
解题思路:
- 两个已经排好顺序链表想要合并成为一个新的排好顺序的链表
- 设定链表1list1链表2list2
- 当L1和L2都不为空链表时,比较list1和list2头节点,将小的那个添加在新的链表L3中
- 当一个节点添加后,原链表应摘除此节点
代码如下:
var mergeTwoLists = function(list1, list2) {
const prehead = new ListNode(-1);
let prev = prehead;
while (list1 != null && list2 != null) {
if (list1.val <= list2.val) {
prev.next = list1;
list1 = list1.next;
} else {
prev.next = list2;
list2 = list2.next;
}
prev = prev.next;
}
prev.next = list1 === null ? list2 : list1;
return prehead.next;
};