顺序表的基本操作 C语言实现 本节主要介绍了顺序表的基本操作,包括顺序表的初始化、插入、删除、查找、获取等操作,使用 C 语言实现。 顺序表的定义 顺序表是一种线性表,它的元素在内存中连续存放,通过数组来实现。顺序表由三个部分组成:基地址、当前长度和当前分配的存储容量。 顺序表的基本操作 ### 1. 顺序表的初始化 顺序表的初始化是指在内存中为顺序表分配空间,包括基地址、当前长度和当前分配的存储容量。初始化函数的实现代码如下: ```c int InitSeqList(SeqList* L) { L->elem = (DataType *)malloc((LIST_INTSIZE + 1) * sizeof(DataType)); if (L->elem == NULL) { printf("\t\t\t 内存分配错误\n"); return 0; } L->length = 0; L->listsize = LIST_INTSIZE; printf("\t\t\t 内存分配成功"); return 1; } ``` ### 2. 顺序表的插入操作 顺序表的插入操作是指在顺序表中插入一个新的元素。插入函数的实现代码如下: ```c int InsertSeqList(SeqList* L, int i, DataType x) { int j; if (L->length == L->listsize) { printf("\t\t\t 顺序表已满"); return 0; } else { if (i < 1 || i > L->length + 1) { printf("\t\t\t 位置不合法"); return 0; } else { for (j = L->length; j >= i; j--) { L->elem[j + 1] = L->elem[j]; } L->elem[i] = x; L->length++; return 1; } } } ``` ### 3. 顺序表的删除操作 顺序表的删除操作是指从顺序表中删除一个元素。删除函数的实现代码如下: ```c int DeleteSeqList(SeqList* L, int i) { int j; if (i < 1 || i > L->length) { printf("\t\t\t 不存在第 i 个元素"); return 0; } else { for (j = i; j < L->length; j++) { L->elem[j] = L->elem[j + 1]; } L->length--; return 1; } } ``` ### 4. 顺序表的查找操作 顺序表的查找操作是指在顺序表中查找一个元素。查找函数的实现代码如下: ```c int SearchSeqList(SeqList* L, DataType x) { int j = 1; while (j <= L->length && L->elem[j] != x) { j++; } if (j > L->length) { printf("\t\t\t 找不到你要的值,请重新输入"); return 0; } else { return j; } } ``` ### 5. 顺序表的获取操作 顺序表的获取操作是指从顺序表中获取一个元素。获取函数的实现代码如下: ```c DataType GetfromSeqList(SeqList* L, int i) { DataType x; if (i < 1 || i > L->length) { printf("\t\t\t 查找位置不合法"); return 0; } else { x = L->elem[i]; return x; } } ``` ### 6. 顺序表的显示操作 顺序表的显示操作是指显示顺序表中的所有元素。显示函数的实现代码如下: ```c void ShowSeqList(SeqList* L) { int i; printf("\n\t\t\t 显示线性表的所有元素: "); if (L->length == 0) { printf("\n\t\t\t 链表为空"); } else { printf("\n\t\t\t"); for (i = 1; i <= L->length; i++) { printf("\t%c", L->elem[i]); } } } ``` 顺序表的基本操作主要包括初始化、插入、删除、查找、获取和显示六种操作,这些操作都是顺序表操作的基础。
剩余9页未读,继续阅读
- 粉丝: 20
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助