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


Posted in Python onMarch 08, 2019

本文实例讲述了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编程语言的35个与众不同之处(语言特征和使用技巧)
Jul 07 Python
Python网络编程中urllib2模块的用法总结
Jul 12 Python
读取本地json文件,解析json(实例讲解)
Dec 06 Python
python机器学习之决策树分类详解
Dec 20 Python
Python 编程速成(推荐)
Apr 15 Python
python3实现猜数字游戏
Dec 07 Python
Flask框架单例模式实现方法详解
Jul 31 Python
Python根据服务获取端口号的方法
Sep 25 Python
tensorflow 获取checkpoint中的变量列表实例
Feb 11 Python
python tkinter之 复选、文本、下拉的实现
Mar 04 Python
python 实现仿微信聊天时间格式化显示的代码
Apr 17 Python
安装Anaconda3及使用Jupyter的方法
Oct 27 Python
Python3实现的判断回文链表算法示例
Mar 08 #Python
python字符串循环左移
Mar 08 #Python
详解Python Matplot中文显示完美解决方案
Mar 07 #Python
详解Python安装tesserocr遇到的各种问题及解决办法
Mar 07 #Python
Python3实现的判断环形链表算法示例
Mar 07 #Python
浅析Python 读取图像文件的性能对比
Mar 07 #Python
python try 异常处理(史上最全)
Mar 07 #Python
You might like
雄兵连三大错觉:凯莎没了,凉冰阵亡了,华烨觉得自己又行了
2020/04/09 国漫
PHP中常用数组处理方法实例分析
2008/08/30 PHP
解析用PHP读写音频文件信息的详解(支持WMA和MP3)
2013/05/10 PHP
PHP实现多图上传和单图上传功能
2018/05/17 PHP
mouse_on_title.js
2006/08/25 Javascript
javascript学习之闭包分析
2010/12/02 Javascript
40个有创意的jQuery图片和内容滑动及弹出插件收藏集之二
2011/12/31 Javascript
JavaScript中的onerror事件概述及使用
2013/04/01 Javascript
基于jquery实现发送文章到手机的代码
2014/12/26 Javascript
JavaScript中解析JSON数据的三种方法
2015/07/03 Javascript
JS和jQuery使用submit方法无法提交表单的原因分析及解决办法
2016/05/17 Javascript
JavaScript中的boolean布尔值使用学习及相关技巧讲解
2016/05/26 Javascript
JavaScript实现in-place思想的快速排序方法
2016/08/07 Javascript
基于JS实现checkbox全选功能实例代码
2016/10/31 Javascript
关于JS Lodop打印插件打印Bootstrap样式错乱问题的解决方案
2016/12/23 Javascript
浅谈jQuery操作类数组的工具方法
2016/12/23 Javascript
vue-cli下的vuex的简单Demo图解(实现加1减1操作)
2018/02/26 Javascript
vue watch深度监听对象实现数据联动效果
2018/08/16 Javascript
使用 Angular RouteReuseStrategy 缓存(路由)组件的实例代码
2019/11/01 Javascript
浅谈vue中使用编辑器vue-quill-editor踩过的坑
2020/08/03 Javascript
[02:09:59]火猫TV国士无双dota2 6.82版本详解(下)
2014/09/29 DOTA
[03:39]2015国际邀请赛主赛事首日精彩回顾
2015/08/05 DOTA
Pandas:Series和DataFrame删除指定轴上数据的方法
2018/11/10 Python
Python 中的 import 机制之实现远程导入模块
2019/10/29 Python
使用canvas生成含有微信头像的邀请海报没有微信头像问题
2019/10/29 HTML / CSS
吃透移动端 Html5 响应式布局
2019/12/16 HTML / CSS
英文自荐信
2013/12/19 职场文书
学雷锋月活动总结
2014/04/25 职场文书
英语导游词
2015/02/13 职场文书
学习与创新自我评价
2015/03/09 职场文书
装饰技术负责人岗位职责
2015/04/13 职场文书
运动会通讯稿600字
2015/07/20 职场文书
2016年党校科级干部培训班学习心得体会
2016/01/06 职场文书
Django项目如何获得SSL证书与配置HTTPS
2021/04/30 Python
CSS filter 有什么神奇用途
2021/05/25 HTML / CSS
python缺失值的解决方法总结
2021/06/09 Python