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

yipeiwu_com6年前Python基础

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

反转一个单链表。

方案一:迭代

# 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

方案二:递归

# -*- 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相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python加密解密算法与技巧总结》、《Python编码操作技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

使用python批量化音乐文件格式转换的实例

最近在做声音文件数据处理,写了一个自动将m4a文件转化为wav的脚本。 import os m4a_path = "/Users/Downloads/start1/" m4a_f...

批量将ppt转换为pdf的Python代码 只要27行!

这是一个Python脚本,能够批量地将微软Powerpoint文件(.ppt或者.pptx)转换为pdf格式。 使用说明 1、将这个脚本跟PPT文件放置在同一个文件夹下。 2、运行这个脚...

Python max内置函数详细介绍

Python max内置函数 max(iterable, *[, key, default]) max(arg1, arg2, *args[, key]) Return the larg...

Python实现合并同一个文件夹下所有txt文件的方法示例

Python实现合并同一个文件夹下所有txt文件的方法示例

本文实例讲述了Python实现合并同一个文件夹下所有txt文件的方法。分享给大家供大家参考,具体如下: 一、需求分析 合并一个文件夹下所有txt文件 二、合并效果 三、pyth...

python常用web框架简单性能测试结果分享(包含django、flask、bottle、tornado)

测了一下django、flask、bottle、tornado 框架本身最简单的性能。对django的性能完全无语了。 django、flask、bottle 均使用gunicorn+g...