【一天一道Leetcode】合并兩個(gè)有序鏈表

本篇推文共計(jì)2000個(gè)字,閱讀時(shí)間約3分鐘。
01
題目描述

題目描述:
將兩個(gè)升序鏈表合并為一個(gè)新的升序鏈表并返回。
新鏈表是通過(guò)拼接兩個(gè)鏈表的所有節(jié)點(diǎn)組成的。
如下面的示例:
輸入:l1 = [1,2,4], l2 = [1,3,4]
輸出:[1,1,2,3,4,4]
輸入:l1 = [], l2 = []
輸出:[]
輸入:l1 = [], l2 = [0]
輸出:[0]提示:
1. 兩個(gè)鏈表的節(jié)點(diǎn)數(shù)目范圍是[0, 50]
2. -100 <= Node.val <= 100
3. l1和l2均按非遞減順序排列
02
方法和思路
我們注意題目中的條件,
這里的話(huà),我想到方法是定義一個(gè)空的列表,
分別將兩個(gè)鏈表中的值加入到列表中。
兩個(gè)鏈表中的值全部加入到列表中之后,
對(duì)列表進(jìn)行排序。
因?yàn)榇藭r(shí)為列表,我們?cè)俣x一個(gè)新鏈表,
將列表的值依次加入到鏈表中。

我們用代碼表示此題的解法如下:
class Solution:
def mergeTwoLists(self, l1: ListNode, l2: ListNode) -> ListNode:
l=[]
while l1:
l.append(l1.val)
l1=l1.next
while l2:
l.append(l2.val)
l2=l2.next
l.sort()
newlist=ListNode(0)
res=newlist
for i in l:
node=ListNode(i)
res.next = node
res = res.next
return newlist.next
【年終總結(jié)】你好2021,再見(jiàn)2020。

【快速寫(xiě)好畢業(yè)論文】你不得不知曉的七個(gè)常用文獻(xiàn)搜索平臺(tái)

【秋招紀(jì)實(shí)錄】一篇特別正經(jīng)的【騰訊】求職經(jīng)驗(yàn)分享

【一天一道Leetcode】回文字符串-最少分割次數(shù)

【一天一道Leetcode】最長(zhǎng)公共前綴

【一天一道Leetcode】套信封問(wèn)題
你與世界
只差一個(gè)
公眾號(hào)
評(píng)論
圖片
表情

