基于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数组条件过滤filter函数使用示例
Jul 22 Python
python采用getopt解析命令行输入参数实例
Sep 30 Python
python模块之StringIO使用示例
Apr 08 Python
在Python下利用OpenCV来旋转图像的教程
Apr 16 Python
Python 使用os.remove删除文件夹时报错的解决方法
Jan 13 Python
Python 基础教程之包和类的用法
Feb 23 Python
Android 兼容性问题:java.lang.UnsupportedOperationException解决办法
Mar 19 Python
python判断完全平方数的方法
Nov 13 Python
Python SSL证书验证问题解决方案
Jan 13 Python
简单了解django处理跨域请求最佳解决方案
Mar 25 Python
jupyter 导入csv文件方式
Apr 21 Python
Python绘制数码晶体管日期
Feb 19 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购物车实现代码
2011/10/10 PHP
Javascript 实现TreeView CheckBox全选效果
2010/01/11 Javascript
js 返回时间戳所对应的具体时间
2010/07/20 Javascript
jquery 与NVelocity 产生冲突的解决方法
2011/06/13 Javascript
jQuery提交多个表单的小例子
2013/06/30 Javascript
js图片处理示例代码
2014/05/12 Javascript
JQuery中模拟image的ajaxPrefilter与ajaxTransport处理
2015/06/19 Javascript
bootstrap table表格插件使用详解
2017/05/08 Javascript
js 获取json数组里面数组的长度实例
2017/10/31 Javascript
vscode中vue-cli项目es-lint的配置方法
2018/07/30 Javascript
vue中v-for循环给标签属性赋值的方法
2018/10/18 Javascript
Vue创建头部组件示例代码详解
2018/10/23 Javascript
vue element-ui之怎么封装一个自己的组件的详解
2019/05/20 Javascript
vue 解决文本框被键盘遮住的问题
2019/11/06 Javascript
jsonp格式前端发送和后台接受写法的代码详解
2019/11/07 Javascript
vuex Module将 store 分割成模块的操作
2020/12/07 Vue.js
基于Vue2实现移动端图片上传、压缩、拖拽排序、拖拽删除功能
2021/01/05 Vue.js
使用python分析git log日志示例
2014/02/27 Python
Python中使用装饰器时需要注意的一些问题
2015/05/11 Python
Python函数中的函数(闭包)用法实例
2016/03/15 Python
bat和python批量重命名文件的实现代码
2016/05/19 Python
简单谈谈Python中的json与pickle
2017/07/19 Python
Python实现的特征提取操作示例
2018/12/03 Python
python itchat给指定联系人发消息的方法
2019/06/11 Python
Apache,wsgi,django 程序部署配置方法详解
2019/07/01 Python
Python 获取命令行参数内容及参数个数的实例
2019/12/20 Python
Python中os模块功能与用法详解
2020/02/26 Python
Opencv求取连通区域重心实例
2020/06/04 Python
详解px单位html5响应式方案
2018/03/08 HTML / CSS
来自世界上最好大学的在线课程:edX
2018/10/16 全球购物
阿迪达斯越南官网:adidas越南
2020/07/19 全球购物
高中运动会入场词
2014/02/14 职场文书
云南省召开党的群众路线教育实践活动总结会议新闻稿
2014/10/21 职场文书
初中信息技术教学计划
2015/01/22 职场文书
小学语文教师研修感悟
2015/11/18 职场文书
Android实现图片九宫格
2022/06/28 Java/Android