数据结构代码实现 您所在的位置:网站首页 数据结构第五章课后题答案严蔚敏 数据结构代码实现

数据结构代码实现

2023-07-02 10:49| 来源: 网络整理| 查看: 265

基本操作

        InitList(&L):初始化表。构造一个空的线性表。

        采用动态分配内存的方式定义顺序表。

        存储数组的空间是在程序执行过程中通过动态存储分配语句分配的,一旦数据空间占满,就另外开辟一块更大的存储空间,用来替换原来的存储空间,从而达到扩充存储数组空间的目的。原来的数据整体复制到新数组内。

//顺序表定义——动态分配 #include #include #define InitSize 10 //定义初始长度 typedef struct { int *data; //数组头指针 int MaxSize; //数组最大容量 int length; //数组长度 }SqList; void InitList(SqList *L) { L->data = (int*)malloc(InitSize * sizeof(int)); //动态分配内存 L->MaxSize = InitSize; for(int i=0; iMaxSize; i++) L->data[i] = 0; //设置默认值 L->length = 0; } void IncreaseSize(SqList *L) { int *p = L->data; L->data = (int*)malloc((L->MaxSize+InitSize)*sizeof(int)); for(int i=0; ilength; i++) { L->data[i] = p[i]; } L->MaxSize = L->MaxSize + InitSize; for(int i=L->length; iMaxSize; i++) L->data[i] = 0; free(p); } int main() { SqList L; InitList(&L); //初始化数组 //赋值0-9 for(int i=0; i


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有