线性表的链式存储结构

简介: 线性表的链式存储结构

   用一组物理位置任意的存储单元来存放线性表的数据元素,存储元素可以是连续的,也可以是不连续的,元素中的逻辑次序与物理次序不一定相同。


结点由数据域和指针域构成。数据域:存储元素数值数据,指针域:存储直接猴急结点的存储位置。


单链表是由头指针唯一确定,因此单链表可以用头指针的名字来命名。


与链式存储有关的术语:

1.结点:数据元素的存储映像。由数据域和指针域两部分组成。


2.链表:n个结点由指针域组成一个链表。他是线性表的链式存储结构,称为线性表的链式存储结构。


3.单链表、双链表、循环链表:结点只有一个指针域的链表,称为单链表或线性链表;结点有两个指针域的链表,称为双链表;首尾相接的链表称为循环链表。

微信截图_20230911194756.png

4.头指针、头结点和首元结点:

头指针:是指向链表中第一个结点的指针;

首元结点:是指链表中存储第一个数据元素a1的结点;

头结点:是在链表的首元结点之前附设的一个结点。

微信截图_20230911194932.png

在链表中设置头结点有什么好处?


1.便于首元结点的处理(首元结点的地址保存在头结点的指针域中,所以在链表的第一个位置上的操作和其他位置一致,无需进行特殊处理)


2.便于空表和非空表的统一处理(无论链表是否为空,头指针都是指向头结点的非空指针,因此空表和非空表的处理就统一了)。  


相关文章
|
12月前
|
算法 vr&ar
线性表的详解与深入
线性表的详解与深入
|
12月前
|
存储 算法 索引
线性表的顺序存储和链式存储
线性表的顺序存储和链式存储
|
存储 缓存
线性表
从以上就很容易看出,在缓存利用率方面,顺序表由于内存是连续的,而链表是一个个单个的节点连起来的,顺序表的命中率绝对要比链表高不少,但是链表又要比顺序表要灵活不少,到这里我相信你就能理解为什么说所以这两种结构是优势互补的关系了,具体使用哪种结构,当然还是要根据具体场景去抉择了,好了这篇博客到这里就结束了,多多点赞支持哦!!
线性表
|
存储 算法 C++
线性表和链表
线性表和链表
116 0
|
存储 人工智能 DataX
线性表的顺序存储实现
线性表的顺序存储实现
|
存储
线性表的链式存储——链表
线性表的链式存储——链表
187 0
|
存储 C++
线性表的顺序存储——顺序表
线性表的顺序存储——顺序表
161 2
线性表的顺序存储——顺序表
|
存储 机器学习/深度学习 人工智能
浅谈线性表
数据结构线性表、栈与队列的区别0
104 0
浅谈线性表
线性表的链式存储实现(带头结点)
线性表的链式存储实现(带头结点)