Python3 反转一个单链表
生活随笔
收集整理的這篇文章主要介紹了
Python3 反转一个单链表
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Python3 反轉一個單鏈表
反轉一個單鏈表。
示例:
輸入: 1->2->3->4->5->NULL 輸出: 5->4->3->2->1->NULL解題:
# Definition for singly-linked list. # class ListNode: # def __init__(self, x): # self.val = x # self.next = Noneclass Solution:def reverseList(self, head: ListNode) -> ListNode:if head == None:return Nonenew_head = ListNode() # 創建一個新鏈表的頭節點old_head = ListNode() # 題意中的head是第一個數據節點,要想用傳統的頭節點,需要自己手動創建old_head.next = headp = head #p最開始指向第一個數據節點,然后在每次循環體后移一個,直到空節點為止while p!=None:# 原鏈表刪除pold_head.next = p.nextp.next = None# 新鏈表新增pp.next = new_head.next #這一步可以和上面合成一步,但是為了便于觀察new_head.next = p# p繼續指向原鏈表的下一個節點p = old_head.nextreturn new_head.next總結
以上是生活随笔為你收集整理的Python3 反转一个单链表的全部內容,希望文章能夠幫你解決所遇到的問題。