最近复习数据结构,在读数据结构的经典作《大话数据结构》(程杰),以下是近期对于线性表的顺序存储结构的整理,后期尽量持续更新。
一、顺序存储定义
线性表的顺序存储结构,指的是用一段地址连续的存储单元依次存储线性表的数据元素。
二、顺序存储方式
1. 顺序存储的结构代码为:
#include<stdio.h>#include<stdlib.h>#define MAXSIZE 20 /* 存储空间初始分配量 */#define INCREACEMENT 10 /* 存储空间分配增量 */typedef int ElemType;/* ElemType 类型根据实际情况而定,这里指定为int */typedef int Status; /* Status 类型根据实际情况而定,这里指定为int */#define OK 1#define ERROR 0typedef struct{ElemType *elem; // 存储空间基地址,此处为int型,视情况而定 int length; // 元素表当前长度 int size; //当亲分配的存储容量 }SqList;
2. 顺序表的初始化操作(分配一个预定大小的数组空间,并将顺序表的长度设为0):
Status InitList(SqList &L){L.elem = (ElemType *)malloc(MAXSIZE*sizeof(int));if(!L.elem){return;}L.length = 0