16 合併兩個排序的鍊錶 python

2022-06-13 17:18:13 字數 683 閱讀 5207

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

1

class

solution:2#

返回合併後列表

3def

merge(self, phead1, phead2):4#

write code here

5 dummy =p = listnode(-1)

6while phead1 and

phead2:

7if phead1.val 8 p.next=listnode(phead1.val)

9 phead1 =phead1.next

10else

:11 p.next=listnode(phead2.val)

12 phead2 =phead2.next

13 p =p.next

14if

phead2:

15 phead1=phead2

16 p.next=phead1

17return dummy.next

2019-12-08 08:58:27

16 合併兩個排序的鍊錶

題目 輸入兩個單調遞增的鍊錶,輸出兩個鍊錶合成後的鍊錶,當然我們需要合成後的鍊錶滿足單調不減規則。思路 與歸併排序思路相同。用到了乙個小技巧,宣告頭節點時,不宣告為null,使資料域為0,返回時返回head.next,這樣在 不需要先給head賦值,比較簡潔。public class solutio...

16 合併兩個排序的鍊錶

輸入兩個單調遞增的鍊錶,輸出兩個鍊錶合成後的鍊錶,當然我們需要合成後的鍊錶滿足單調不減規則。總結 要建立乙個新的頭結點,如果直接在l1 l2 上修改,鍊錶就會被更改,還要涉及到儲存結點,會使得問題複雜化。建立新的頭結點之後,每次都向後挪動一位,並且插入l1 l2 中的小值,對應的鍊錶挪動一位。tip...

16 合併兩個排序的鍊錶

題目描述 輸入兩個單調遞增的鍊錶,輸出兩個鍊錶合成後的鍊錶,當然我們需要合成後的鍊錶滿足單調不減規則。python 方法1 遞迴 class solution 返回合併後列表 defmerge self,phead1,phead2 if phead1 is none return phead2 el...