1.软文推荐

2.软文推荐

3.软文推荐

本篇文章重点为大家分享一下python实现单向链表及单向链表的反转具体方法,有需要的小伙伴可以参考一下。

链表的定义

链表中的每个节点会存储相邻节点的位置信息,单链表中的每个节点只存储下一关节点的位置信息

简单介绍python如何实现单向链表及单向链表的反转简单介绍python如何实现单向链表及单向链表的反转
单向链表的实现
class ListNode:
 def __init__(self, val):
   self.val = val
   self.next = None

要实现单向链表只需要把几个节点关联起来就可以了,把一个节点的next设置为另一个节点就可以了,例如创建一个A->B->C 的单向链表可以这么写:

first_node = ListNode("A")
second_node = ListNode("B")
third_node = ListNode("C")
first_node.next = second_node
second_node.next = third_noe

first_node 就是这个链表的表头,他们3个一起组成了一个单向链表

单向链表反转
class Solution:
 def reverse(self, head):
   prev = None
   current = head
   while current:
     middle, current.next = current.next, prev
     prev, current = current, middle
   return prev

反转的时候,先实例化Solution对象,然后调用reverse函数把链表的表头first_node 传进去:

solution = Solution()
result = solution.reverse(first_node)

如果你想查看这个链表的内容顺序,可以这样写:

print(result.val, result.next.val, result.next.next.val)

终端输出结果为CBA,符合要求

本文来源:www.lxlinux.net/9154.html,若引用不当,请联系修改。

相关文章 8

1

黄山网站优化电话(黄山做网站) 1分钟前

目录:1、黄山权重优化怎么选2、谁知道黄山IE修复的网址啊!!!!3、黄山做网站,百度推广在哪?4、黄山市古徽印象文化传媒有限公司...

2

Linux 爱好者该向闭源软件敞开怀抱了 4分钟前

微软和苹果都已经为开源产品得到接受奠定了基础,甚至苹果公司有开发了一个开源网页显示了它在2015年已经开放的所有产品;微软更是公...

3

义乌网页制作(义乌详情页制作) 6分钟前

目录:1、我想注册一个公司(在义乌)从事网络业务,包括网络销售,广告,注册网络科技公司还是电子商务公司好?2、义乌电商培训哪里...

4

Linux系统设置密码策略 8分钟前

系统管理员最重要的工作之一就是对用户进行管理,其中用户密码涉及到系统安全,下面良许教程网为打击分享一下Linux系统中如何设置密码...

5

VIRPUS:美国裸金属服务器,E3-1230/16GB/500GB/5TB,$35/月,西雅图机房 14分钟前

virpus怎么样,virpus是一家成立于2006年的老牌国外VPS主机商,隶属于Wowrack机房旗下站点,主要提供VPS、裸金属服务器和独立服务器租用等,其...

6

服务器租用和托管有哪些区别?(服务器租用和托管不怕数据泄露么) 15分钟前

服务器租用和服务器托管有什么区别?首先我们来看看两者是什么意思。 服务器托管 服务器托管是自主购买服务器硬件,找一家正规的服务...

7

雅安云服务器,雅安 雅云 21分钟前

目录:1、雅安云台解码器有两个拨码器,都是8位,sw1.sw2个代表什么意思?我想地址码是9,波特率是2400,协议是p..d2、如何申请云平台服务...

8

linux服务器内存查看(linux服务器内存怎么看) 25分钟前

目录:1、命令查看Linux服务器内存、CPU、显卡、硬盘使用情况2、如何使用Linux命令行查看Linux服务器内存使用情况3、如何查看linux服务器内存...