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内置的字符串处理函数详细整理(覆盖日常所用)
Aug 19 Python
详解Python迭代和迭代器
Mar 28 Python
PyCharm使用教程之搭建Python开发环境
Jun 07 Python
python模拟登录并且保持cookie的方法详解
Apr 04 Python
解决python opencv无法显示图片的问题
Oct 28 Python
python字符串格式化方式解析
Oct 19 Python
wxPython绘图模块wxPyPlot实现数据可视化
Nov 19 Python
python循环输出三角形图案的例子
Nov 22 Python
用Python实现校园通知更新提醒功能
Nov 23 Python
python列表生成器迭代器实例解析
Dec 19 Python
Python ORM框架Peewee用法详解
Apr 29 Python
Pycharm安装python库的方法
Nov 24 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
如何从一个php文件向另一个地址post数据,不用表单和隐藏的变量的
2007/03/06 PHP
php通过数组实现多条件查询实现方法(字符串分割)
2014/05/06 PHP
解密ThinkPHP3.1.2版本之模块和操作映射
2014/06/19 PHP
浅谈Coreseek、Sphinx-for-chinaese、Sphinx+Scws的区别
2016/12/15 PHP
PHP isset()及empty()用法区别详解
2020/08/29 PHP
prototype 学习笔记整理
2009/07/17 Javascript
jquery ajax 同步异步的执行 return值不能取得的解决方案
2012/01/08 Javascript
用JavaScript实现用一个DIV来包装文本元素节点
2014/09/09 Javascript
js实现左侧网页tab滑动门效果代码
2015/09/06 Javascript
JS获取文件大小方法小结
2015/12/08 Javascript
最全面的JS倒计时代码
2016/09/17 Javascript
jQuery插件HighCharts实现气泡图效果示例【附demo源码】
2017/03/13 Javascript
详解vue的数据binding绑定原理
2017/04/12 Javascript
jQuery实现table中两列CheckBox只能选中一个的示例
2017/09/22 jQuery
详谈DOM简介及节点、属性、查找节点的方法
2017/11/16 Javascript
Angular利用内容投射向组件输入ngForOf模板的方法
2018/03/05 Javascript
vue-cli3项目展示本地Markdown文件的方法
2019/06/07 Javascript
js获取 gif 的帧数的代码实例
2019/09/10 Javascript
微信小程序和H5页面间相互跳转代码实例
2019/09/19 Javascript
在vue中使用jsx语法的使用方法
2019/09/30 Javascript
Node.js学习之内置模块fs用法示例
2020/01/22 Javascript
WebPack工具运行原理及入门教程
2020/12/02 Javascript
微信小程序反编译的实现
2020/12/10 Javascript
原生js拖拽功能制作滑动条实例代码
2021/02/05 Javascript
Python使用xlrd读取Excel格式文件的方法
2015/03/10 Python
python安装与使用redis的方法
2016/04/19 Python
Python 调用 zabbix api的方法示例
2019/01/06 Python
PYQT5 vscode联合操作qtdesigner的方法
2020/03/24 Python
解决Windows下python和pip命令无法使用的问题
2020/08/31 Python
欧洲著名的二手奢侈品网站:Vestiaire Collective
2020/03/07 全球购物
软件配置管理有什么好处
2015/04/15 面试题
五一劳动节活动记录
2014/03/23 职场文书
本科生求职信
2014/06/17 职场文书
群众路线自我剖析材料
2014/10/08 职场文书
团员个人年度总结
2015/02/26 职场文书
一文了解MYSQL三大范式和表约束
2022/04/03 MySQL