python中链表怎么表示?
发布时间:2026-02-05 21:55:25

一:链表
常见的线性表包括数组和链表。链表可分为单链表、双向链表和环链表。今天,我们主要开展单链表的相关操作,包括增加、删除、检查、更改、链表的反转、链表的连接等。
二:链表 & 数组
与数组相比,链表作为一种数据结构,有哪些优缺点?
优点:
链表不占用连续内存,使用离散内存存储数据;数组使用连续内存。
在添加和删除数据时,原始数据的移动较小;数组需要移动大量的原始数据(想象一下:如果在数组中间插入一个元素,数组的后半部分将移动到一个单元)
不足:
链表在查询和遍历数据时比较慢,不像数组可以直接用索引访问某个数据。
三:链表的表示
节点类
我们知道链表是由节点连接的,所以我们首先创建节点类
#Student类(节点类)Student对象是节点 classStudent: def__init__(self,SchNum,name,score): self.SchNum=SchNum self.name=name self.score=score self.next=None
链表类
链表所需的属性有:头节点、尾节点、链表大小
#链表类 classLink: #构造函数 def__init__(self): self.head=Student(None,None,None)#头节点为空 self.tail=self.head self.size=1
在创建链表时,我们还需要添加、删除、更改、检查和其他操作。如果链表甚至不能实现这些功能,那么它就没用了。
四、增加元素
添加元素是在链表的末端添加一个新的节点。为了添加一个节点,我们需要一步:
将链表尾节点的下一个节点指向新节点
以新节点为尾节点
链表长度+1
#添加节点 defadd(self,SchNum,name,score): stu=Student(SchNum,name,score)#创建新节点 self.tail.next=stu#尾节点的下一个节点是新节点 self.tail=stu#尾节点是新节点 self.size=self.size+
