顺序表是简单的一种线性结构,逻辑上相邻的数据在计算机内的存储位置也是相邻的,可以
快速定位第几个元素,中间不允许有空值,插入、删除时需要移动大量元素。
顺序表的三个要素:
结构体定义
#define MAX_SIZE 100 struct _SqList { ElemType *elems; // 顺序表的基地址 int length; // 顺序表的长度 int size; // 顺序表总的空间大小 }
顺序表的初始化
1 #define MAX_SIZE 100 2 typedef struct{ 3 int *elems; // 顺序表的基地址 4 int length; // 顺序表的长度 5 int size; // 顺序表的空间 6 }SqList; 7 bool initList(SqList &L) //构造一个空的顺序表L 8 { 9 L.elems=new int[MAX_SIZE]; //为顺序表分配Maxsize 个空间 10 if(!L.elems) return false; //存储分配失败 11 L.length=0; //空表长度为0 12 L.size = MAX_SIZE; 13 return true; 14 }
1 bool listAppend(SqList &L, int e) 2 { 3 if(L.length==MAX_SIZE) return false; //存储空间已满 4 L.elems[L.length] = e; 5 L.length++; //表长增1 6 return true; 7 }
=======================================================================================================================
原文:https://www.cnblogs.com/CooCoChoco/p/13150200.html