JavaScript:leetcode_21.2つの順序付きチェーンテーブルを結合する(再集計)
4204 ワード
タイトルの説明
。 。
:
:1->2->4, 1->3->4
:1->1->2->3->4->4
問題を解く構想1
実は集計ソートの最後のステップです.2つの順序付きシーケンスを合成します.チェーンテーブルを再帰的に巡るだけだ.
コード実装1
/**
* 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) {
let res = new ListNode(0);
if (l1 && l2) {
mergeL(l1,l2,res)
} else {
return l1 || l2
}
return res
};
function mergeL(l1, l2, res) {
if (l1.val <= l2.val) {
res.next = l1
res.next.next = l2
} else {
res.next = l2
res.next.next = l1
}
if (l1.next && l2.next) {
mergeL(l1.next, l2.next, res.next.next)
}
}