您的位置:首页 > 脚本大全 > > 正文

如何用python创建单链表(Python3实现的反转单链表算法示例)

更多 时间:2022-01-14 02:21:10 类别:脚本大全 浏览量:335

如何用python创建单链表

Python3实现的反转单链表算法示例

本文实例讲述了Python3实现的反转单链表算法。分享给大家供大家参考,具体如下:

反转一个单链表。

方案一:迭代

  • ?
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • # Definition for singly-linked list.
  • # class ListNode:
  • #   def __init__(self, x):
  • #     self.val = x
  • #     self.next = None
  • class Solution:
  •   def reverseList(self, head):
  •     """
  •     :type head: ListNode
  •     :rtype: ListNode
  •     """
  •     cur, pre = head, None
  •     while cur:
  •       cur.next, pre, cur = pre, cur, cur.next
  •     return pre
  • 方案二:递归

  • ?
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • # -*- coding:utf-8 -*-
  • # class ListNode:
  • #   def __init__(self, x):
  • #     self.val = x
  • #     self.next = None
  • class Solution:
  •   # 返回ListNode
  •   def ReverseList(self, pHead):
  •     # write code here
  •     if not pHead or not pHead.next:
  •       return pHead
  •     else:
  •       newHead = self.ReverseList(pHead.next)
  •       pHead.next.next=pHead
  •       pHead.next=None
  •       return newHead
  • 希望本文所述对大家Python程序设计有所帮助。

    原文链接:https://blog.csdn.net/zhenghaitian/article/details/81009682

    您可能感兴趣