Python知識分享網(wǎng) - 專業(yè)的Python學(xué)習(xí)網(wǎng)站 學(xué)Python,上Python222
阿里 P8大佬的算法解題筆記 PDF 下載
匿名網(wǎng)友發(fā)布于:2024-02-05 10:41:57
(侵權(quán)舉報(bào))
(假如點(diǎn)擊沒反應(yīng),多刷新兩次就OK!)

阿里 P8大佬的算法解題筆記 PDF 下載  圖1

 

 

 

資料內(nèi)容:

 

1. 合并兩個(gè)有序鏈表
題?描述
將兩個(gè)升序鏈表合并為?個(gè)新的升序鏈表并返回。新鏈表是通過拼接給定的兩個(gè)鏈表的所有節(jié)點(diǎn)組成的。
示例:
輸?:1->2->4, 1->3->4
輸出:1->1->2->3->4->4
前置知識
遞歸
鏈表
思路
本題可以使?遞歸來解,將兩個(gè)鏈表頭部較?的?個(gè)與剩下的元素合并,并返回排好序的鏈表
頭,當(dāng)兩條鏈表中的?條為空時(shí)終?遞歸。
關(guān)鍵點(diǎn)
掌握鏈表數(shù)據(jù)結(jié)構(gòu)
考慮邊界情況

代碼
JS Code:
/**
* Definition for singly-linked list.
* function ListNode(val) {
* this.val = val;
* this.next = null;

* }
*/
/**
* @param {ListNode} l1
* @param {ListNode} l2
* @return {ListNode}
*/
const mergeTwoLists = function (l1, l2) {
if (l1 === null) {
return l2;
}
if (l2 === null) {
return l1;
}
if (l1.val < l2.val) {
l1.next = mergeTwoLists(l1.next, l2);
return l1;
} else {
l2.next = mergeTwoLists(l1, l2.next);
return l2;
}
};