目录
顺序表是我们最熟悉不过的数组所组成的存储单元连续的线性结构,它简单而且容易理解,让我们来see see它是如何实现的。
一、顺序表介绍
顺序表可以分为:静态顺序表与动态顺序表
1.1 静态顺序表
静态顺序表就是数据存储的空间大小在一开始初始化的时候就定好了,后面运行后不能随意增加或缩小,当你不清楚所需存储数据多少的时候不建议使用,如果给太大就会浪费、太小又不能够存储完,但是如果一开始就知道所需空间大小,静态顺序表就会做到刚好不浪费空间。
1.2 动态顺序表
动态顺序表则是将数据存储的空间变成可以任意改变的,而不是死板、固定的一块空间,他的空间改变之后任然回事连续的、不会影响其特点,因此当你不了解数据的大小时,选择动态绝对错不了、它方便而且节省空间。
二、顺序表的功能实现
2.1 顺序表的定义
此顺序表采用的是动态定义的方法,我们需要将初始化中自己创建在堆上的动态空间传给指针变量a、用a访问空间存储所需数据,而size就代表我们所存储数据的个数,capacity表示顺序表的动态空间大小;最上面的宏定义表示初始化容量设定,typedef定义的类型表示所存数据类型。
2.2 顺序表的初始化
初始化显而易见,需要将顺序表里面的成员都赋予初值以便后面使用,我们只需将每个成员一个一个赋值即可。
注意:断言是为了用户使用初始化函数传参传错时的一个暴力检测,我们