成都市建设监理协会网站,360搜索引擎,免费发布网站建设的平台,公司让我做网站文章目录 数据结构线性表基本操作顺序表的定义顺序表基本操作 单纯上传一下数据结构中可能考察的代码#xff0c;规格很乱#xff0c;过几天改规格#xff0c;提前水一篇
数据结构
线性表
基本操作
InitList(L) // 初始化表。构造一个空的线性表L#xff0… 文章目录 数据结构线性表基本操作顺序表的定义顺序表基本操作 单纯上传一下数据结构中可能考察的代码规格很乱过几天改规格提前水一篇
数据结构
线性表
基本操作
InitList(L) // 初始化表。构造一个空的线性表L分配内存空间。
DestroyList(L) // 销毁操作。销毁线性表并释放线性表L所占用的内存空间。
ListInsert(L,i,e) // 插入操作。在表L中的第i个位置上插入指定元素e。
ListDelete(L,i,e) // 删除操作。删除表L中第i个位置的元素并用e返回删除元素的值。
LocateElem(L,e) // 按值查找操作。在表L中查找具有给定关键字值的元素。
GetElem(L,i) // 按位查找操作。获取表L中第i个位置的元素的值。
Length(L) // 求表长。返回线性表L的长度即L中数据元素的个数。
PrintList(L) // 输出操作。按前后顺序输出线性表L的所有元素值。
Empty(L) // 判空操作。若L为空表则返回true否则返回false。顺序表的定义 f r e e ( ) free() free() 和 m a l l o c ( ) malloc() malloc()
# include stdlib.h // malloc, freeL.data (ElemType *) malloc (sizeof(ElemType) * InitSize);
// malloc 函数返回一个指针需要强制转型为你定义的数据元素类型指针
free(L.data);静态分配定义顺序表
#define MaxSize 10 // 定义最大长度
typedef struct{ElemType data[MaxSize]; // 用静态的“数组”存放数据元素int length; // 顺序表的当前长度
}SqList; // 顺序表的类型定义静态分配方式静态分配初始化顺序表
void InitList(Sqlist L){for (int i 0; i MaxSize; i )L.data[i] 0;L.length 0;
}动态分配定义顺序表
#define InitSize 10 //顺序表的初始长度
typedef struct{ElemType *data; //指示动态分配数组的指针int MaxSize; //顺序表的最大容量int length; //顺序表的当前长度
}SeqList; //顺序表的类型定义动态分配方式动态分配初始化顺序表
void InitList(Seqlist L){L.data (int *)malloc(InitSize * sizeof(int));L.length 0;L.MaxSize InitSize;
}顺序表基本操作
顺序表的插入
// 在顺序表L的第i个位置插入新元素e。
bool ListInsert (Sqlist L, int i, ElemType e){if (i 1 || i L.length 1)return false;if (L.length MaxSize)return false;for (int j L.length; j i; j -- )L.data[j] L.data[j - 1];L.data[i - 1] e;L.length ;return true;
}