实验二 线性表的基本操作一、实验目的1.掌握用 C++/C 语言调试程序的基本方法
2.掌握线性表的顺序存储和链式存储的基本运算,如插入、删除等
二、实验要求1.C++/C 完成算法设计和程序设计并上机调试通过
2.撰写实验报告,提供实验结果和数据
3. 分析算法,要求给出具体的算法分析结果,包括时间复杂度和空间复杂度,并简要给出算法设计小结和心得
三、实验内容:1
分析并运行以下各子程序的主要功能
程序 1:顺序存储的线性表和运算#include#define MAXSIZE 100int list[MAXSIZE];int n;/*insert in a seqlist*/int sq_insert(int list[], int *p_n, int i, int x){int j;if (i〈0 || i>*p_n) return(1);if (*p_n==MAXSIZE) return(2);for (j=*p_n+1; j〉i; j——)list[j]=list[j-1];list[i]=x;(*p_n)++;return(0);}/*delete in a seq list*/int sq_delete(int list[], int *p_n, int i){int j;if (i〈0 || i>=*p_n) return(1);for (j = i+1; j〈=*p_n; j++)list[j-1] = list[j];(*p_n)—-;return(0);} void main(){int i,x,temp;printf(”please input the number for n\n”);printf("n=”);scanf("%d",&n);for (i=0; i