牛客網11 合併兩個排序的鍊錶

2021-08-20 22:27:40 字數 718 閱讀 4729

題目描述

輸入兩個單調遞增的鍊錶,輸出兩個鍊錶合成後的鍊錶,當然我們需要合成後的鍊錶滿足單調不減規則。

# class listnode:

# def __init__(self, x):

# self.val = x

# self.next = none

class

solution:

# 返回合併後列表

defmerge

(self, phead1, phead2):

# write code here

phead3 = listnode(0)

tmp = phead3

while phead1 and phead2:

if phead1.val>=phead2.val:

phead3.next = phead2

phead2 = phead2.next

else:

phead3.next = phead1

phead1= phead1.next

phead3 = phead3.next

if phead1:

phead3.next = phead1

elif phead2:

phead3.next = phead2

return tmp.next

牛客網 劍指offer 合併兩個排序的鍊錶

輸入兩個單調遞增的鍊錶,輸出兩個鍊錶合成後的鍊錶,當然我們需要合成後的鍊錶滿足單調不減規則。有點類似於歸併排序的裡面的乙個基本操作,設定乙個新的節點res,兩個指標,分別指向兩個輸入,比較兩個對應的val的大小來決定誰放到res的next裡面去,考慮好邊界情況即可解題。具體 如下 1.遞迴版本 st...

牛客網OJ題 合併兩個有序鍊錶

輸入兩個單調遞增的鍊錶,輸出兩個鍊錶合成後的鍊錶,當然我們需要合成後的鍊錶滿足單調不減規則。定義乙個新的鍊錶,用來存放合併後的鍊錶,並記錄該鍊錶的頭結點。1.判斷list1是否為空,如果為空直接返回list2。同樣,判斷list2是否為空,如果為空直接返回list1。2.當list1和list2同時...

牛客刷題之合併兩個排序的鍊錶

輸入兩個單調遞增的鍊錶,輸出兩個鍊錶合成後的鍊錶,當然我們需要合成後的鍊錶滿足單調不減規則。解題思路 構建乙個空的新鍊錶,然後對原來兩個鍊錶中的節點兩兩進行比較,第一次比較小的節點將作為新鍊錶的頭節點 最後在依次比較後續的節點並放到新的鍊錶中,最後返回新鍊錶的頭節點即可。public class l...