基于Python實現(xiàn)2種反轉鏈表方法代碼實例
題目:
反轉一個單鏈表。
示例:
輸入: 1->2->3->4->5->NULL
輸出: 5->4->3->2->1->NULL
進階:
你可以迭代或遞歸地反轉鏈表。你能否用兩種方法解決這道題?
思路:
主要需要注意反轉過程中不要丟了節(jié)點。可以使用兩個指針,也可以使用三個指針。
Python解法一:
class Solution: def reverseList(self, head): cur, prev = head, None while cur: temp = cur.next cur.next = prev prev = cur cur = temp return prev
Python解法二:
class Solution: def reverseList(self, head): if head == None or head.next == None: return head prev = None cur = head post = head.next while post: cur.next = prev prev = cur cur = post post = post.next cur.next = prev return cur
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關文章:
1. React+umi+typeScript創(chuàng)建項目的過程2. ASP中常用的22個FSO文件操作函數(shù)整理3. ASP.NET Core 5.0中的Host.CreateDefaultBuilder執(zhí)行過程解析4. SharePoint Server 2019新特性介紹5. .Net core 的熱插拔機制的深入探索及卸載問題求救指南6. 解決ASP中http狀態(tài)跳轉返回錯誤頁的問題7. 讀大數(shù)據(jù)量的XML文件的讀取問題8. 三個不常見的 HTML5 實用新特性簡介9. 無線標記語言(WML)基礎之WMLScript 基礎第1/2頁10. ASP調(diào)用WebService轉化成JSON數(shù)據(jù),附json.min.asp
