1.題目
將兩個(gè)升序鏈表合并為一個(gè)新的 升序 鏈表并返回。新鏈表是通過拼接給定的兩個(gè)鏈表的所有節(jié)點(diǎn)組成的。?
2.示例
示例 1:
輸入:l1 = [1,2,4], l2 = [1,3,4]
輸出:[1,1,2,3,4,4]?
?示例 2:
輸入:l1 = [], l2 = []
輸出:[]
示例 3:?
輸入:l1 = [], l2 = [0]
輸出:[0]
3.思路
遞歸調(diào)用
將這個(gè)問題不斷拆分成子問題,然后設(shè)置出口。由題目可以知道,合并兩個(gè)鏈表,首先需要比較兩個(gè)鏈表中的元素,將元素小的拆分出來然后拼接到后續(xù)組合好的鏈表中。如此反復(fù)直到最后一個(gè)一個(gè)元素。
4.代碼
LeetCode代碼
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode() {}
* ListNode(int val) { this.val = val; }
* ListNode(int val, ListNode next) { this.val = val; this.next = next; }
* }
*/
class Solution {
public ListNode mergeTwoLists(ListNode list1, ListNode list2) {
// 出口
if(list1 == null){
return list2;
}
if(list2 == null){
return list1;
}
// 子問題
if(list1.val<list2.val){
list1.next = mergeTwoLists(list1.next,list2);
return list1;
}else{
list2.next = mergeTwoLists(list2.next,list1);
return list2;
}
}
}
?會(huì)了?試試挑戰(zhàn)下一題!?(^?^●)?? (●′?`)?文章來源:http://www.zghlxwxcb.cn/news/detail-653405.html
LeetCode150道面試經(jīng)典題-- 加一(簡(jiǎn)單)_Alphamilk的博客-CSDN博客文章來源地址http://www.zghlxwxcb.cn/news/detail-653405.html
到了這里,關(guān)于LeetCode150道面試經(jīng)典題-- 合并兩個(gè)有序鏈表(簡(jiǎn)單)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!