Python實現合并兩個有序鏈表的方法示例
更新時間:2019年01月31日 09:37:16 作者:lin-chang
這篇文章主要介紹了Python實現合并兩個有序鏈表的方法,涉及Python操作鏈表節(jié)點的遍歷、判斷、添加等相關操作技巧,需要的朋友可以參考下
本文實例講述了Python實現合并兩個有序鏈表的方法。分享給大家供大家參考,具體如下:
思路:先選出第一個節(jié)點,然后遍歷兩個鏈表,把小的作為當前節(jié)點的下一個節(jié)點,一直到其中一個鏈表遍歷完,這時候把另一個鏈表直接接上就好
# Definition for singly-linked list. # class ListNode(object): # def __init__(self, x): # self.val = x # self.next = None class Solution(object): def mergeTwoLists(self, l1, l2): """ :type l1: ListNode :type l2: ListNode :rtype: ListNode """ #先考慮鏈表其中一個為空的情況 if not l1: return l2 if not l2: return l1 curNode1 = l1 curNode2 = l2 #先選出第一個節(jié)點 if curNode1.val < curNode2.val: head = curNode1 curNode1 = curNode1.next else: head = curNode2 curNode2 = curNode2.next cur = head while curNode1 and curNode2: if curNode1.val < curNode2.val: cur.next = curNode1 curNode1 = curNode1.next else: cur.next = curNode2 curNode2 = curNode2.next cur = cur.next #一直循環(huán)到有一個鏈表先結束 #如果是鏈表1先結束,則拼上鏈表2剩余的那段 if not curNode1: cur.next = curNode2 #如果是鏈表2先結束,則拼上鏈表1剩余的那段 else: cur.next = curNode1 return head
更多關于Python相關內容感興趣的讀者可查看本站專題:《Python數據結構與算法教程》、《Python加密解密算法與技巧總結》、《Python編碼操作技巧總結》、《Python函數使用技巧總結》、《Python字符串操作技巧匯總》及《Python入門與進階經典教程》
希望本文所述對大家Python程序設計有所幫助。
相關文章
Python之tkinter列表框Listbox與滾動條Scrollbar解讀
這篇文章主要介紹了Python之tkinter列表框Listbox與滾動條Scrollbar解讀,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-05-05python實現向微信用戶發(fā)送每日一句 python實現微信聊天機器人
這篇文章主要為大家詳細介紹了python實現向微信用戶發(fā)送每日一句,python調實現微信聊天機器人,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-03-03python opencv把一張圖片嵌入(疊加)到另一張圖片上的實現代碼
這篇文章主要介紹了python opencv把一張圖片嵌入(疊加)到另一張圖片上,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-06-06