You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

9 lines
1.3 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

单链表是一种链式存取的数据结构用一组地址任意的存储单元存放线性表中的数据元素。链表中的数据是以节点来表示的每个节点的构成data域数据元素+next域下一个结点的存储位置
单链表与数组相比的最大差别是:单链表的数据元素存放在内存空间的地址是不连续的,而数组的数据元素存放的地址在内存空间中是连续的,这也是为什么根据索引无法像数组那样直接就能查询到数据元素。
对于单链表的这种特殊结构,我们可以用“火车”来类比,假设一节车厢可以存储一个数据元素,当数据不够时,就新增一节车厢挂载在火车尾。在遍历时,只能从头部车厢开始遍历,依次走到尾部(即单向遍历,默认从前向后)
![[Pasted image 20221207183805 1.png]]
总结1.只能在队尾添加元素,并且只能从头部开始遍历 2.在内存中的地址是随机非连续的 3.每个节点都必须记录下个节点的存储位置
难点1.如何查找上一个节点,需要从头开始遍历,下标-1 2. 如何插入节点需要找到找到上一个节点将上一个节点的NEXT节点作为待插入节点的NEXT节点然后将待插入节点作为上一个节点新的NEXT节点