python如何實現單向鏈表及單向鏈表的反轉
鏈表中的每個節點會存儲相鄰節點的位置信息,單鏈表中的每個節點只存儲下一關節點的位置信息

class ListNode: def __init__(self, val): self.val = val self.next = None
要實現單向鏈表只需要把幾個節點關聯起來就可以了,把一個節點的next設置為另一個節點就可以了,例如創建一個A->B->C 的單向鏈表可以這么寫:
first_node = ListNode('A') second_node = ListNode('B') third_node = ListNode('C') first_node.next = second_node second_node.next = third_noe
first_node 就是這個鏈表的表頭,他們3個一起組成了一個單向鏈表
單向鏈表反轉class Solution: def reverse(self, head): prev = None current = head while current: middle, current.next = current.next, prev prev, current = current, middle return prev
反轉的時候,先實例化Solution對象,然后調用reverse函數把鏈表的表頭first_node 傳進去:
solution = Solution()result = solution.reverse(first_node)
如果你想查看這個鏈表的內容順序,可以這樣寫:
print(result.val, result.next.val, result.next.next.val)
終端輸出結果為CBA,符合要求
以上就是python如何實現單向鏈表及單向鏈表的反轉的詳細內容,更多關于python 單向鏈表的資料請關注好吧啦網其它相關文章!
相關文章:
1. 基于android studio的layout的xml文件的創建方式2. 解決Android studio xml界面無法預覽問題3. 詳解Android studio 動態fragment的用法4. Android如何加載Base64編碼格式圖片5. 圖文詳解vue中proto文件的函數調用6. Spring Boot和Thymeleaf整合結合JPA實現分頁效果(實例代碼)7. 什么是python的自省8. .Net Core使用Coravel實現任務調度的完整步驟9. Vuex localStorage的具體使用10. Vue封裝一個TodoList的案例與瀏覽器本地緩存的應用實現

網公網安備