数据结构第四版 实验一:顺序表的基本操作

2019-01-26 16:40

实验一:顺序表的基本操作

【实验目的】

1、掌握建立顺序表的基本方法。 2、理解和掌握顺序表元素查找算法

3、掌握顺序表的插入算法的思想和实现。 4、掌握顺序表的删除算法的思想和实现 【实验内容】

1、建立一个顺序表,要求从键盘输入10个整数,并将该顺序表的元素从屏幕显示出来。

2、用函数实现在顺序表中查找其中一个元素,如果找到,返回该元素在顺序表中的位置和该元素的值,否则提示无此元素。

3、用函数实现顺序表的插入和删除操作。由用户输入待插入元素及插入位置,

将完成插入后的顺序表输出;由用户输入删除第几个元素,将完成删除后的顺序表输出。 【实验源代码】 #include #include #define MAXSIZE 10 #include \

typedef struct { int *k; int length; }SqList; main() {SqList a; int i,x,y;

int ListInsert_Sq(SqList &L,int i,int e);

printf(\请输入顺序表长度\scanf(\

a.k=(int*)malloc(sizeof(int)*a.length); for(i=0;i<=a.length-1;i++) {a.k[i]=rand()0; printf(\}

printf(\请输入要插入的位置和元素\\n\scanf(\y=ListInsert_Sq(a,i,x); for(i=0;i

int ListInsert_Sq(SqList &L,int i,int e) {int j;

for(j=L.length;j>=i;j--) L.k[j+1]=L.k[j]; L.k[i]=e; ++L.length; return 1; }

头文件:\typedef struct {

datatype list[maxsize]; int size;

}seqlist;

void ListInitiate(SeqList *L) //初始化顺序表L { }

int ListLength(SeqList L) //返回顺序表L的当前数据元素个数 { }

int ListInsert(SeqList *L,int i,int x) //在顺序表L的第i(0<=i<=size)个位置前插入数据元素值x {int j;

if (L->size>=10) //插入成功返回1,插入失败返回0 {

printf(\顺序表已满无法插入!\\n\return L.size;

L->size=0; //定义初始数据元素个数

}

return 0;

else if(i<0||i>L->size) { } else {

for(j=L->size;j>i;j--)

L->list[j]=L->list[j-1]; //从后面向前一次后以数据,未插入做准备 L->list[i]=x; //插入x L->size ++; //元素个数加1 return 1; } }

int ListDelete(SeqList *L,int i,int *x); {

int j;

printf(\参数i不合法!\\n\return 0;

if(L->size<=0)

printf(\顺序表已空无数据元素可删!\\n\return 0; }

else { } }

int ListGet(SeqList L,int i,int *x) { }

【实验结果】

if(i<0||i>L。size-1) { } else { }

*x=L.list[i]; return 1;

printf(\参数i不合格!\\n\return 0; *x=L->list[i];

for(j=i+1;j<=L->list-1;j++)

L->list[j-1]=L->list[j];

L->list--; return 1;

【实验心得】


数据结构第四版 实验一:顺序表的基本操作.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:贺G同学获梅西大学信息科学研究生文凭offer!

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: