大数据结构-实验1-线性表的基本操作.doc

大数据结构-实验1-线性表的基本操作.doc

ID:55955502

大小:46.00 KB

页数:9页

时间:2020-06-18

大数据结构-实验1-线性表的基本操作.doc_第1页
大数据结构-实验1-线性表的基本操作.doc_第2页
大数据结构-实验1-线性表的基本操作.doc_第3页
大数据结构-实验1-线性表的基本操作.doc_第4页
大数据结构-实验1-线性表的基本操作.doc_第5页
资源描述:

《大数据结构-实验1-线性表的基本操作.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、实验1线性表的基本操作一、需求分析目的:掌握线性表运算与存储概念,并对线性表进行基本操作。1.初始化线性表;2.向链表中特定位置插入数据;3.删除链表中特定的数据;4.查找链表中的容;5.销毁单链表释放空间;二、概要设计l基础题主要函数:初始化线性表InitList(List*L,intms)向顺序表指定位置插入元素InsertList(List*L,intitem,intrc)删除指定元素值的顺序表记录DeleteList1(List*L,intitem)删除指定位置的顺序表记录DeleteList2(List*L,intrc)查找顺序表中的元素FindList(ListL,

2、intitem)输出顺序表元素OutputList(ListL)实验步骤:1,初始化顺序表2,调用插入函数3,在顺序表中查找指定的元素4,在顺序表中删除指定的元素5,在顺序表中删除指定位置的元素6,遍历并输出顺序表l提高题要求以较高的效率实现删除线性表中元素值在x到y(x和y自定义)之间的所有元素方法:按顺序取出元素并与x、y比较,若小于x且大于y,则存进新表中。编程实现将两个有序的线性表进行合并,要求同样的数据元素只出现一次。方法:分别按顺序取出L1,L2的元素并进行比较,若相等则将L1元素放进L中,否则将L1,L2元素按顺序放进L。l本程序主要包含7个函数主函数main()

3、初始化线性表InitList(List*L,intms)向顺序表指定位置插入元素InsertList(List*L,intitem,intrc)删除指定元素值的顺序表记录DeleteList1(List*L,intitem)删除指定位置的顺序表记录DeleteList2(List*L,intrc)查找顺序表中的元素FindList(ListL,intitem)输出顺序表元素OutputList(ListL)提高题的程序voidCombine(List*L1,List*L2,List*L)voidDeleteList3(List*L,intx,inty)一、详细设计初始化线性表I

4、nitList(List*L,intms)voidInitList(List*L,intms){L->list=(int*)malloc(LIST_INIT_SIZE*sizeof(int));L->size=0;L->MAXSIZE=LIST_INIT_SIZE;}向顺序表指定位置插入元素InsertList(List*L,intitem,intrc)voidInsertList(List*L,intitem,intrc){inti;if(L->size>=L->MAXSIZE){L->list=(int*)realloc(L->list,(L->MAXSIZE+LISTI)

5、*sizeof(int));L->MAXSIZE+=LISTI;}for(i=L->size-1;i>=rc-1;i--){L->list[i+1]=L->list[i];}L->list[rc-1]=item;L->size++;}删除指定元素值的顺序表记录DeleteList1(List*L,intitem)voidDeleteList1(List*L,intitem){inti,j;for(i=0;isize;i++){if(L->list[i]==item){break;}}for(j=i;jsize;j++){L->list[j]=L->list[j+

6、1];}L->size--;}删除指定位置的顺序表记录DeleteList2(List*L,intrc)voidDeleteList2(List*L,intrc){inti;for(i=rc-1;isize;i++){L->list[i]=L->list[i+1];}L->size--;}查找顺序表中的元素voidFindList(List*L,intitem){inti;for(i=0;isize;i++){if(L->list[i]==item)break;}if(L->size==i){printf("找不到");}else{printf("第%d个元

7、素为%d",i+1,item);}}输出顺序表元素OutputList(ListL)voidOutputList(List*L){inti;for(i=0;isize;i++){printf("%d",L->list[i]);}printf("");}删除x到y之间的所有元素voidDeleteList3(List*L,intx,inty){inti,j,temp;if(x>y){temp=x;x=y;y=temp;}for(i=0,j=0;isize;i++){if

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。