本文实例为大家分享了python实现单链表反转的具体代码,供大家参考,具体内容如下

代码如下:
class Node(object):
def __init__(self, elem, next_=None):
self.elem = elem
self.next = next_
def reverseList(head):
if head == None or head.next==None: # 若链表为空或者仅一个数就直接返回
return head
pre = None
next = None
while(head != None):
next = head.next # 1
head.next = pre # 2
pre = head # 3
head = next # 4
return pre
if __name__ == '__main__':
l1 = Node(3) # 建立链表3->2->1->9->None
l1.next = Node(2)
l1.next.next = Node(1)
l1.next.next.next = Node(9)
l = reverseList(l1)
print (l.elem, l.next.elem, l.next.next.elem, l.next.next.next.elem)
原始单链表:
反转后单链表:
反转过程如下:
第一步:next = head.next
将 head.next 赋值给 next 变量,即next 指向了节点2,先将节点2 保存起来。
第二步:head.next = pre (初始pre==None)
将 pre 变量赋值给 head.next,即 此时节点1 指向了 None
第三步:pre = head
将 head 赋值给了 pre,即 pre 指向节点1,将节点1 设为“上一个节点”
第四步:head = next
将 next 赋值给 head,即 head 指向了节点2,此时节点2 设为“头节点”
第一次循环完毕,进入第二次循环,如下图:
第一步:next = head.next
将 head.next 赋值给 next 变量,即 next 指向了节点3,先将节点3 保存起来。
第二步:head.next = pre (此时的pre已经不为None)
将 pre 赋值给 head.next,pre 在上一次循环的时候指向了节点1,那么这一步的意义就是节点2 指向了 节点1,完成1和2节点的反转。
第三步:pre = head
将 head 赋值给了 pre,即 pre 指向节点2,将节点2 设为“上一个节点”
第四步:head = next
将 next 赋值给 head,即 head 指向了节点3。此时节点3 设为“头节点”
第二次循环完毕,以此类推!第三次第四次第五次循环。最后反转成如下图
若干注意点:
(1)帮助记忆图:
(2)当前头节点的下一个节点一定要保存(比如:当前头节点为2,先将节点3 保存起来)
(3)实现反转的key point: head.next = pre
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
相关推荐:
seo管理系统是什么,seo网站管理 ,过度圆ai
seo菲律宾是做什么,菲律宾网址排名 ,openl ai
ChatGPT异常了:人工智能的极限与突破,ai and ethics
AI自动帮写,轻松应对内容创作挑战,赋能写作新未来,嘿科技ai
文章自动生成AI:助力写作新时代,让创作更高效
SEO组织:让您的网站流量倍增的秘密武器,seo 绩效标准
SEO优化如何进行:提升网站排名,轻松超越竞争对手,ai写作怎么操作手机
SEO全套秘籍:提升网站流量与排名的终极指南,荣昌手机网站建设
为什么行业都要做seo,为什么要做seo ,ai明信片
SEO笔记:如何打造高效的SEO策略提升网站排名,网站优化优质服务方案
OpenAIGPT:开启智能时代的语言革命,ai辣妹动漫
为什么说seo重要,为什么说seo重要一点 ,中通智能ai是什么意思
AI翻译工具的革命-ChatGPT等技术让语言互通无碍,淘宝ai写作检测准吗
SEO监控:精准把握网站排名与优化成效的利器,湖南seo排名商家名单
什么是seo网络推广,seo网络推广技术 ,ai写真官方
SEO拓客,让您的业务飞速增长!,密云自适应网站建设
什么是seo在线咨询,什么是seo在线咨询服务 ,unreal ai
SEO无限:如何利用SEO技术实现网站流量爆发?,网站建设总监
用AI修改文章,提升写作效率与质量的新时代
SEM+SEO:助力企业数字化营销的双剑合璧之道,ai头像丑
如何选择适合你的AI工具?全面解析AI工具哪个好用
ChatGPT无法加载?检查您的网络设置并尝试重启Chat,ai写作怎么写作文的
软件我在AI:改变未来的智能助手
ChatGPT桌面应用安装了,不能用?解决方案全攻略,让你轻松畅享AI助手!,绫波丽ai智能
seo链接锚是什么,什么是锚链接,如何设置锚链接 ,保山智能AI
AI一键生成文章网页版,让内容创作更简单高效
AI代写文章:高效创作的新风尚
不利于seo是什么,不属于seo对网店推广的作用 ,ai渐变下载
seo都有什么问题,seo都有什么问题和答案 ,ai凯旋公主下载
AI软件不用登录,让你的工作更高效轻松,智能ai写作改稿怎么改
seo要什么条件,seo都需要做什么 ,交互ai求职
SEO考核:如何通过精准的SEO优化提升网站排名与流量,茶艺营销推广方案怎么写
SEO做法-提升网站流量与排名的关键秘诀,屏东网站推广招聘
seo适合什么职业,seo有前途么 ,ai小精灵
AI免费生成文本,内容创作新篇章
seo要学什么语言,做seo需要什么语言 ,ai martino
ChatGPT网站突然不能用了?如何快速解决这个问题,让你重新畅享AI对话!,ai新建多个画板
SEO汇报:如何通过数据分析提升网站排名,助力企业业绩增长,免费推广网站大全百度经验
AI做文章:引领智能创作的未来
seo相关知识是什么,seo相关技术 ,ai写作讯飞星火认知大模型
AI代谢文章:从灵感到成果的创作革命
SEO包月服务:助力企业提升网站排名与流量的长期利器,网站建设流程 报读文库
SEO有话:如何用精准优化助力企业在线增长,食品微信营销推广
ChatGPT打开后空白:如何解决这个困扰并高效使用AI助手,ai四声怎么写
OpenArtAI如何进入:数字艺术的未来之门,分析海报ai
SEO子-为你的网站注入流量的秘密武器,麻城网站网址优化
SEO新手必看:从零开始SEO优化的终极指南,随州网站优化技巧
SEO教研:数字营销新趋势,提升网站流量与转化率的关键,齐鲁证券网站建设
【SEO优化全攻略】提升网站流量的终极秘籍,带你轻松玩转搜索引擎优化!,金融网站推广维护
二创AI:打破创意壁垒,引领未来内容创作新潮流,背影教案网站建设游戏