前言
大家好,作者菌又来了,今天我们开始顺序表的学习,今天的内容十分的简单,就是带领大家简单了解顺序表,那好话不多说,直接开始我们今天的正题!!
1.顺序表的概念和结构
线性表
线性表(linear list) 是n个具有相同性质的数据元素有限序列。线性表是一种在实际中广泛使用的数据结构,常见的线性表:顺序表、链表、栈、队列、字符串~~
线性表在逻辑结构上是线性结构,也就是说是连续的一条线。但是在屋里结构上并不是一定要连续的,线性表在物理结构上,通常以数组和连式结构的形式存储。
2.顺序表的分类
1.顺序表和数组的区别
顺序表的底层是数组,对数组的封装,实现了常用的增删查改等接口
2.顺序表的分类
静态顺序表
概念:使用定长数组存储元素

静态顺序表的缺陷:空间给少了不够用,给多了会造成空间的浪费
动态顺序表
按需申请

3.动态顺序表的实现
想要实现动态链表我们大概要做的步骤就是这些,这些功能的实现在后面作者菌会为大家详细介绍。
 #define INIT_CAPACITY 4
 typedef int SLDataType;
 // 动态顺序表 -- 按需申请
 
typedef struct SeqList
 {
 SLDataType* a;
 int size;     
// 有效数据个数
 
int capacity; // 空间容量
 
}SL;
//初始化和销毁 
void SLInit(SL* ps);
 void SLDestroy(SL* ps);
 void SLPrint(SL* ps);
 //扩容
void SLCheckCapacity(SL* ps);
 //头部插⼊删除
 // 尾部插⼊删除
void SLPushBack(SL* ps, SLDataType x);
 void SLPopBack(SL* ps);
 void SLPushFront(SL* ps, SLDataType x);
 void SLPopFront(SL* ps);
 //指定位置之前插⼊
//删除数据
void SLInsert(SL* ps, int pos, SLDataType x);
 void SLErase(SL* ps, int pos);
 int SLFind(SL* ps, SLDataType x);好,今天的内容就简单介绍到哲理,咱们下期再见,拜拜











![【2024最新华为OD-C/D卷试题汇总】[支持在线评测] LYA的生日聚会(100分) - 三语言AC题解(Python/Java/Cpp)](https://img-blog.csdnimg.cn/direct/64af87d31c6a4b1aa1f54aa1794668cd.png)







