单链表
特点:结点中只包含一个指针域,且首尾不连接
图解:

名词:
| 名词 | 概念 |
|---|---|
| 头指针 | 指向链表中第一个结点(或为头结点、或为首元结点)的指针 |
| 头结点 | 在链表的首元结点之前附设的一个结点;数据域内只放表长等信息,它不计入表长度。其作用是统一空表、和非空链表的形式 |
| 首元结点(开始结点) | 指链表中存储线性表第一个数据元素a1的结点 |
| 尾结点(结束结点) | 指链表中最后一个结点,尾指针指向NULL |
大家要明白,链表解决的是我们开发中的什么问题?
数组在插入和删除的时候,需要查找到当前元素,并把后续所有的元素全部向前或者向后移动,而链表在查找到以后,只需要用前一节点的指针指向新的节点或者删除元素的后一节点即可。
可以用大脑想一下,对于无序不相邻的元素,通过链表进行关联,并且可以进行快速的增删是多么方便的一件事!
Python中单链表的实现
#创建结点对象类
class Node(object):
#创建结点,初始化两个变量,默认均为None,创建新结点传value值即可,next存的是下一个结点对象
def __init__(self, value=None, next=None):
self.value, self.next = value, next
class SingleLink(object):
#初始化三个变量,
# final_node:记录最后一个结点
# root:记录头结点
# length:记录链表长度
def __init__(self

本文介绍了单链表的特点,强调了它在数据插入和删除操作上的优势。通过图解和名词解释帮助理解链表概念。然后,文章详细讲述了如何在Python中实现单链表,提出了在实现过程中需要注意的final_node和prev_node变量的使用。最后,鼓励读者自行扩展实现重复数据的查找、删除和更新操作,以深入理解和掌握单链表。
最低0.47元/天 解锁文章
1573

被折叠的 条评论
为什么被折叠?



