
1.顺序表示和实现sequence sq顺序谁困死在顺序的车道flow f漏 流动流淌overflow溢出 漫出init→ initialize → 初始化1/0mergemer j合并头文件主要作用常用函数stdio.h (Standard Input/Output)标准输入输出printf()、scanf()stdlib.h (Standard Library)标准库内存分配、程序控制等malloc()、calloc()、realloc()、free()string.h字符串处理strlen()、strcpy()、strcmp()2.顺序表的插入先移动元素再插入新元素最后修改长度。从最后一个元素(开始移动)往前移动(调整过的数组的a[3]等于之前数组的a[2]然后再是a[2]等于a[1]):a[3] a[2];a[2] a[1];int ListInsert_sq(Sqlist *L,int i,ElemType e){if(i1|| i L-length1) //判断插入位置(顺序表要是连续的){return ERROR;}if(L-lengthL-listsize) //判断是否扩容 实际元素数量是否已经达到容量。{ElemType *newbase;newbase realloc(L-elem,(L-listsizeLISTINCREMENT)*sizeof(ElemType) );if(newbaseNULL){return OVERFLOW;}L-elemnewbase; //更新 指针elem保存可能发生变化的新地址。realloc可能申请新的内存区域并复制原有数据L-listsizeLISTINCREMENT; //更新容量listsize}内存不够并且扩容结束顺序表插入的核心for(int jL-length;ji;j--){L-elem[j]L-elem[j-1];}L-elem[i-1]e;//插入元素L-length;//长度加一return OK;}3.顺序表的删除先取出要删除的元素再把后面的元素 向前移动。for(p; pq; p) p 是初始化 只执行一次 (初始化; 循环条件; 更新操作)需要接收一个地址*e *p;才能修改主函数中的变量。删除的值--L-length;删除一个元素只需要修改length4.时间复杂度插入平均移动次数删除平均移动次数顺序表的插入和删除平均时间复杂度都是O(n)。5.顺序表的合并把 La 和 Lb 拼在一起保持从小到大的顺序。初始化 Lc 的长度和容量Lc-listsize Lc-length La-length Lb-length;6return 0和return 1最大的区别return把一个值返回给调用者同时结束 当前函数。if0为假非 0为真。main()返回 0通常表示程序正常结束非 0通常表示异常或错误。7.reallocrealloc全称是 Re-allocation重新分配内存。调整之前已经申请的动态内存空间大小。realloc()作用是扩容realloc(原来的内存地址(例如指针p),新的内存大小);