void ClearList(SqList *L) { if (!L->elem) exit(OVERFLOW);//清空表的的前提是表要存在 //顺序表的清空代表着表里面没有任何元素,但其本身的所申请的空间仍然还存在,所以只需将顺序表的长度设为0即可 L->length = 0; } //检测表有没有清空 int main() { SqList p; if (InitList_Sq(&p)) ...
1 C语言中建立顺序表的操作顺序如下:1.清空顺序表:其实清空只不过将元素长度置0,让后面插入数据函数的长度从0开始,其实并不是真正清空,之前的数据元素在内存中还存在,只不过可以被新元素覆盖而已。2.判断顺序表是否为空3.按位置查找元素:其中ElemT与Position是用关键字define定义的宏,这里定义为整型(int)。4...
1、首先是定义一个这样的函数,名称为【SeqSearch】,返回值为Int。2、接下来就可以,传入一个数组,一个长度,和一个查找的值。3、此时,就能从零开始到长度减一个个判断。4、此时,可以判断,如果找到了就返回当前下标加一。5、否则就让这个函数返回负一。6、此时,可以在Main函数中配合运行测试。7...
1、创建 内存四区模型(重要) //创建顺序表结点typedefstruct_tag_Seqlist {intcapacity;intlength; unsignedint*data; }TSeqlist;//创建一个多少容量的顺序表,SeqList*是无类型指针,对它赋值或者使用它需要有具体的类型//注意容量是里面Data的容量SeqList* SeqList_Create(intcapacity) {intret =0; TSeqlist*...
- 清空 clear_sqlist: 将线性表重置为空表 - 查空 is_empty: 检验线性表是否为空表 - 查长 length_sqlist: 获取线性表长度 - 提取 get_sqlist: 提取线性表的第i个元素 - 插入 insert_sqlist: 在线性表第i个位置插入新元素 - 删除 delete_sqlist: 删除线性表第i个元素并返回其值 ...
//线性表---顺序表的基本操作实现(开始) typedef struct{ ElemType data[MAXSIZE]; /*数组存储数据元素,最大个数为MAXSIZE*/ int length; /*当前线性表的长度*/ }SqList; Status LineListInit(SqList *L){ /*【创建/初始化】*/ int i; for(i = ...
//清空顺序表 Status ClearList_Sq(SqList &L) { if (L.elem == NULL) exit(0); int i; Elemtype *p_elem = L.elem; for (i = 0; i<L.length; i++) { *L.elem = NULL; L.elem++; } L.elem = p_elem; } //判断顺序表是否为空 ...
初始化操作,建立一个空的线性表L。 DistroyList(&L) 初始条件:线性表L已存在 操作结果:销毁线性表,释放其空间。 ClearList(&L) 初始条件:线性表L已存在 操作结果:将线性表清空。 ListEmpty(L) 初始条件:线性表L已存在 操作结果:若线性表为空,返回true,否则返回false。
1. 单链表的初始化 2. 单链表的合法判定 3. 单链表成员的打印 4. 单链表成员的赋值(头插法)(尾插法) 5. 顺序表成员的清空 6. *顺序表成员的插入 7. *顺序表成员的删除 /*单链表test*/ #include<iostream> #include<stdlib.h> typedef int ElemType; ...
("顺序表中8在第 %d 位\n",locate);//获取长度intlength=tableLength(table);printf("获取长度是 %d\n",length);//清空ClearTable(&table);printf("清空表\n");//判断是否为空Status isEmpty=tableEmpty(table);printf("是否为空(1是0否):%d\n",isEmpty);traverseTable(table);printf("\n");...