1.线性结构的定义
如果⼀个数据元素序列满⾜:
1. 除第⼀个和最后⼀个数据元素外,每个数据元素只有⼀个前驱数据元素和⼀个后继数据元素;
2. 第⼀个数据元素没有前驱数据元素;
3. 最后⼀个数据元素没有后继数据元素;
我们称这样的结构就叫做 线性结构
线性结构包括:
线性表、链表、栈、队列...... 其中,最典型、最常用的是线性表。
线性表抽象数据类型主要包括两个⽅⾯:既数据集合和该数据集合上的操作集合。
⑴线性表的基本操作根据实际应用而定;
⑵复杂的操作可以通过基本操作的组合来实现;
⑶对不同的应用,操作的接口可能不同。
2.顺序表
在计算机内存中,顺序表是以数组的形式保存的线性表。也就是⼀组地址连续的存储单元依次存储 数据元素的线性结构。 在数组中,我们会先申请⼀段连续的内存空间,然后把数组以此存⼊内存当中,中间没有⼀点空隙。这就是⼀种顺序表存储数据的⽅式。对于顺序表的基本操作有:增(add),删(remove),改 (set),查(find),插(insert)。
1.静态顺序表的结点结构
使用定长数组存储元素 缺陷:给小了不够用,给大了可能浪费,本文代码不以它为例
#define N 10
typedef struct Array{
int date[N];//指针模拟开数组
int length;//理论最大容量
int size;//实际容量
}M