【数据结构与算法】(2):线性表的定义和分类(顺序表和链表)

本文介绍了线性表的定义、特点,包括其逻辑特性,如一对一关系、元素类型相同、有限序列等。接着,文章提到了线性表的两种存储结构——顺序表和链表,顺序表具有元素物理位置相邻的特点,而链表通过指针建立元素间的关系,便于插入和删除操作。最后,对比了两者在存储和操作上的优缺点。
摘要由CSDN通过智能技术生成

🤡博客主页: 醉竺

🥰本文专栏:《数据结构与算法》

😽欢迎关注:感谢大家点赞评论+关注,祝您学有所成! 


✨✨💜💛想要学习更多数据结构与算法点击专栏链接查看💛💜✨✨  


目录

一.线性表概述

1.线性表的定义和特点

 2.判断线性表?

二.线性表的存储结构 

1.顺序表

2.链表

3.顺序存储与链式存储的比较


一.线性表概述

1.线性表的定义和特点

线性表是具有n(n>=0)个相同数据类型的数据元素的有限序列。

fd93394dcf8049c2bc09b08c500ba1ab.png

线性表的表示

若用L命名(List),表示:L=(a1,a2,a3,a4,a5,.., a(i-1),a, a(i+1),...,an) 。

线性表的长度

长度就是线性表中所含元素的个数;当n=0时,表示元素个数为0,是空表。

位序:ai是第i个数据元素,称i为数据元素a在线性表中的位序。注意:数组下标是从0开始的,位序是从1开始的。

线性表元素的特点: 

1. 表中元素个数是有限个

2. 表中元素具有逻辑上顺序性,各个元素有先后次序

3. 表中元素数据类型相同,表中每个元素占用相同大小的存储空间

4. 线性表是一种逻辑结构,表示一对一的相邻关系

5. 表中元素具有抽象性,即线性表仅讨论数据间的逻辑关系,不讨论元素的具体内容。且元素内容可以是任何数据,可以是学生,老师,动物等等,具体实现时可以具体确定下来

非空线性表或线性结构的逻辑特性

存在唯一的一个被称作“第一个”的数据元素

存在唯一的一个被称作“最后一个”的数据元素

除第一个元素外,结构中的每个数据元素均只有一个前驱

除最后一个元素外,结构中的每个数据元素均只有一个后继

 2.判断线性表?

1.一对一?
2.类型相同?
3.有限序列?
4.逻辑结构?

47c26a25c804410c8605f4342b0b74a8.png


二.线性表的存储结构 

(ps:这里仅简单的引入一下,不用太纠结,后面我的博客会具体深入学习线性表的存储结构)

线性表的存储结构有顺序存储结构:顺序表链式存储结构:链表

1.顺序表

定义:把线性表中所有元素按照逻辑顺序,依次存储到从指定位置开始的一块连续存储空间

特点:

第一个元素的存储位置就是指定的存储位置

第i+1个元素的存储位置紧接在第i个元素的存储位置后面

逻辑相邻的两个元素在物理上也相邻

 例子:

99cfc5b4070f408d97eea481aebb7c9c.png

2.链表

定义:在链表存储中,每个结点不仅包含所存元素的信息,还包含元素之间逻辑关系的信息。指的是通过一组任意的存储单元(不要求连续)来存储线性表中的数据元素,对每个元素除存放自身信息之外,还需要存放一个指向其后继的指针。

链表中每个结点的内容:

所存储的元素的信息;元素之间的逻辑关系信息 (指针)

例子:

36b5219fa4344dc0a0703779753ded15.png

3.顺序存储与链式存储的比较

6b7e47df0268484b81da9d7260b7d7ad.png

总结:顺序表最大的特点就是可以随机存取访问任意一个元素,因为只要获取元素在表中的位置、位序,可以直接通过下标进行访问和存取;以及若已知表中首元素在存储器中的位置,则可求出线性表中其他元素的存放的位置。缺点就是插入或者删除元素时需要移动其它多个元素。

链表不要求逻辑上相邻的元素在物理位置上也相邻,它通过“链”建立起元素之间的逻辑关系,因此插入和删除操作不需要移动元素,而只需修改指针,但也会失去顺序表可随机存取的优点。

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

醉竺

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值