基于Python实现2种反转链表方法代码实例


Posted in Python onJuly 06, 2020

题目:

反转一个单链表。

示例:

输入: 1->2->3->4->5->NULL

输出: 5->4->3->2->1->NULL

进阶:

你可以迭代或递归地反转链表。你能否用两种方法解决这道题?

思路:

主要需要注意反转过程中不要丢了节点。可以使用两个指针,也可以使用三个指针。

基于Python实现2种反转链表方法代码实例

基于Python实现2种反转链表方法代码实例

Python解法一:

class Solution:
  def reverseList(self, head):
    cur, prev = head, None
    while cur:
      temp = cur.next
      cur.next = prev
      prev = cur
      cur = temp
    return prev

Python解法二:

class Solution:
  def reverseList(self, head):
    if head == None or head.next == None:
      return head
    prev = None
    cur = head
    post = head.next

    while post:
      cur.next = prev
      prev = cur
      cur = post
      post = post.next
    cur.next = prev
    return cur

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python读取环境变量的方法和自定义类分享
Nov 22 Python
详解Python3中yield生成器的用法
Aug 20 Python
Python用sndhdr模块识别音频格式详解
Jan 11 Python
Python中装饰器学习总结
Feb 10 Python
python实现五子棋游戏
Jun 18 Python
python小程序实现刷票功能详解
Jul 17 Python
python实现大量图片重命名
Mar 23 Python
python实发邮件实例详解
Nov 11 Python
Python threading.local代码实例及原理解析
Mar 16 Python
Python爬虫如何应对Cloudflare邮箱加密
Jun 24 Python
聊聊基于pytorch实现Resnet对本地数据集的训练问题
Mar 25 Python
Python&Matlab实现樱花的绘制
Apr 07 Python
简单了解Django项目应用创建过程
Jul 06 #Python
如何在mac下配置python虚拟环境
Jul 06 #Python
Python优秀开源项目Rich源码解析的流程分析
Jul 06 #Python
使用TensorBoard进行超参数优化的实现
Jul 06 #Python
Django中F函数的使用示例代码详解
Jul 06 #Python
Python 实现 T00ls 自动签到脚本代码(邮件+钉钉通知)
Jul 06 #Python
Django-imagekit的使用详解
Jul 06 #Python
You might like
php数组去重复数据示例
2014/02/25 PHP
你可能不知道PHP get_meta_tags()函数
2014/05/12 PHP
workerman结合laravel开发在线聊天应用的示例代码
2018/10/30 PHP
Prototype Date对象 学习
2009/07/12 Javascript
jquery 批量上传图片实现代码
2010/01/28 Javascript
div+css布局的图片连续滚动js实现代码
2010/05/04 Javascript
js 动态修改css文件用到了cssRule
2014/08/20 Javascript
BootStrap实用代码片段之一
2016/03/22 Javascript
JS中sort函数排序用法实例分析
2016/06/16 Javascript
Backbone中View之间传值的学习心得
2016/08/09 Javascript
nodejs的HTML分析利器node-jquery用法浅析
2016/11/08 NodeJs
jQuery动态产生select option下拉列表
2017/03/15 Javascript
javascript简写常用的12个技巧(可以大大减少你的js代码量)
2020/03/28 Javascript
Vue实例中生命周期created和mounted的区别详解
2017/08/25 Javascript
Vue添加请求拦截器及vue-resource 拦截器使用
2017/11/23 Javascript
基于vue开发的在线付费课程应用过程
2018/01/25 Javascript
基于jQuery ztree实现表格风格的树状结构
2018/08/31 jQuery
详解关于vue2.0工程发布上线操作步骤
2018/09/27 Javascript
javascript设计模式 ? 迭代器模式原理与用法实例分析
2020/04/17 Javascript
vue设置默认首页的操作
2020/08/12 Javascript
python之wxPython应用实例
2014/09/28 Python
详解Python中的条件判断语句
2015/05/14 Python
Python中pandas模块DataFrame创建方法示例
2018/06/20 Python
Python 循环终止语句的三种方法小结
2019/06/24 Python
Python使用matplotlib实现交换式图形显示功能示例
2019/09/06 Python
Python 格式化输出_String Formatting_控制小数点位数的实例详解
2020/02/04 Python
英国皇家造币厂:The Royal Mint
2018/10/05 全球购物
英国家喻户晓的家居商店:The Range
2019/03/25 全球购物
美国体育用品商店:Academy Sports + Outdoors
2020/01/04 全球购物
如何打印出当前源文件的文件名以及源文件的当前行号
2015/04/05 面试题
GC是什么?为什么要有GC?
2013/12/08 面试题
2014年小班保育员工作总结
2014/12/23 职场文书
区域经理岗位职责
2015/02/02 职场文书
评职称个人总结
2015/03/05 职场文书
学生会副主席竞选稿
2015/11/19 职场文书
win11怎么消除图标小盾牌?win11消除图标小盾牌解决方法
2022/08/05 数码科技