引入
我们知道,数据结构分为逻辑结构和物理结构,线性表就是一种逻辑结构,那么线性表对应的物理存储结构是什么呢?如何操作这些存储结构呢?
线性表的物理存储结构
线性表有两种物理存储结构
- **顺序存储结构:**顺序存储结构指的是一段地址
连续的存储单元一次存储线性表中的数据元素。我们很容易想到的就是数组,数组就是地址相连的一段元素,是顺序存储结构。 - 链式存储结构: 稍后详细介绍。
线性表的顺序存储结构
这节我们主要讲线性表的顺序存储结构,其实顺序存储结构在物理上的存储方式就是:
- 在内存中找到一个初始地址
- 通过占位的形式,把一定的内存空间给占了
- 最后,把相同数据类型的数据元素依次放在这块空间里
线性表顺序存储的结构代码
#define MAXSIZE 20 //定义常量 MAXSIZE 为 20
typedef int ElemType; //将 int 类型 别名位 ElemType
typedef struct {
//定义一个结构体变量包含两个元素
Elemtype data[MAXSIZE];
// 一个整型 data 数组,元素有20个
int length;
// 一个整型的长度
} SqList;
//将结构体类型名设置为 SqList