题目描述:

翻转一个链表

您在真实的面试中是否遇到过这个题?

Yes

样例

给出一个链表1->2->3->null,这个翻转后的链表为3->2->1->null

挑战

在原地一次翻转完成

题目分析:

在原地一次翻转完成

循环head链表,将链表中的元素从表头依次取出指向新链表即可。

源码:

"""

Definition of ListNode

class ListNode(object):

def __init__(self, val, next=None):

self.val = val

self.next = next

"""

class Solution:

"""

@param head: The first node of the linked list.

@return: You should return the head of the reversed linked list.

Reverse it in-place.

"""

def reverse(self, head):

# write your code here

if head is None: return None

p = head

cur = None

pre = None

while p is not None:

cur = p.next

p.next = pre

pre = p

p = cur

return pre

python链表定长翻转_python实现单链表翻转相关推荐

  1. python定义定长数组_python 初始化一个定长的数组实例

    python 初始化一个定长的数组实例 ​# 有时候我们提前知道了一个数组的大小,需要给每个元素赋值,此时append好像不管用.我们需要定义一个定# # 长的数组, python中代码如下: b = ...

  2. c语言双链表排序交换节点_图解:单链表翻转的三种方式!

    当我们在聊到链表反转的时候,一定说的都是单链表,双链表本身就具有前驱指针 Prev 和后续指针 next,无需进行翻转. 单链表反转,反转后的效果如下: 看起来很简单,只需要将单链表所有结点的 nex ...

  3. 基于Python的数据结构实验——顺序表与单链表建立与操作(附详细代码和注释)

    1.创建一个名为 prac02_01.py 的文件,在其中编写一个顺序表的类,该类必须包含顺 序表的定义及基本操作,并通过以下步骤测试基本操作的实现是否正确,给出运行结果. (1)初始化一个顺序表 S ...

  4. c语言链表查找的代码与题目,链表的C语言实现之单链表的查找运算_c语言

    建立了一个单链表之后,如果要进行一些如插入.删除等操作该怎么办?所以还须掌握一些单链表的基本算法,来实现这些操作.单链表的基本运算包括:查找.插入和删除.下面我们就一一介绍这三种基本运算的算法,并结合 ...

  5. c语言单链表超市出库,c语言-单链表(二)

    继续复习链表知识点,本章包含单链表的增加,删除,判断是否为空,和链表长度,以及链表的排序 几个知识点 1.链表的判断是否为空 //1.判断链表是否为空 bool isempty_list(PNODE ...

  6. c语言给定一个单链表输入k,C语言实现单链表(不带头结点)的基本操作

    链表在数据结构和算法中的重要性不言而喻.这里我们要用C来实现链表(单链表)中的基本操作.对于链表的基本概念请参考<数据结构与算法之链表>这篇博客.示例代码上传至 https://githu ...

  7. 单链表操作之合并两个单链表

    ***单链表操作之合并两个单链表*** /*  本篇博客为合并两个单链表, 有序和无序都可以: 其中用到单链表的尾插和单链表的选择排序: @单链表排序之选择排序链接:http://blog.csdn. ...

  8. 两个有序链表合并成一个有序的单链表

    将这两个有序链表合并成一个有序的单链表 要求结果链表仍使用原来两个链表的存储空间,不另外占用其它的存储空间 表中允许有重复数据 算法描述 (1)定义一个合并后的指针pc指向La表的头结点.由于要求不占 ...

  9. 单链表操作10-带头结点的单链表逆置(个人学习笔记,仅供参考)

    带头结点的单链表逆置 题目要求 单链表结点定义 函数接口定义 测试程序样例 输入样例 输出样例 答案 题目要求 设计算法Reverse( ),将带头结点的单链表A逆置,要求利用原有链表的链点,最后输出 ...

最新文章

  1. Design Pattern - Bridge(C#)
  2. .net持续集成测试篇之Nunit文件断言、字符串断言及集合断言
  3. 在Spring使用AWS SQS创建消息驱动Bean
  4. 查看redis aof内存_Redis持久化问题定位与优化技巧
  5. mysql游标进阶_MYSQL进阶学习知识拓展一:MySQL 存储过程之游标!
  6. 异质图神经网络及其在电商领域中的应用
  7. vue添加html开启服务器_vue服务端渲染添加缓存
  8. 《神奇的数学》读后感_数学家的眼光读后感
  9. unity 相机(物体)自动前移,单击屏幕后退
  10. python三天简单学习Day2
  11. 逻辑函数代数法化简(二)
  12. ESP32(NodeMCU-32S)简单实现路由中继/wifi中继
  13. traceroute/tracert原理
  14. 项目管理手记 八 SaaS模式的DRP系统是否适用
  15. echarts、dataV 数据可视化大屏
  16. python 多张图片合成pdf_Python多图片合并PDF的方法
  17. 高中上计算机专业用买电脑吗,我是高中毕业生,要上大学该买什么电脑?
  18. android平板电脑怎么才能连接电脑,平板连接电脑没反应怎么办 平板怎样连接电脑...
  19. 力扣周赛 5197. 最小绝对差(java)
  20. php的strstr是什么意思,php strstr函数怎么用

热门文章

  1. 稀缺高品质静物场景空间海报|艺术拍摄
  2. mysql java教程_mysql总结
  3. php 工商银行公众号支付代码_微信支付PHP SDK之微信公众号支付代码详解
  4. TCP/IP:SCTP报文格式
  5. Linux AIO的新归宿:io_uring(介绍,系统调用)
  6. OpenSubdiv:大规模并行CPU和GPU架构上实现高性能细分表面
  7. pkg-config --cflags --libs
  8. xp计算机用户密码设置,XP怎么设置开机密码_XP系统设置开机密码教程-192路由网...
  9. android spinner保存对象,Android Spinner默认值问题
  10. exp导出excel oracle_OracleToExcel_Oracle导出excel数据(OracleToExcel)下载 v3.1 官方版 - 121下载站...