欢迎来到天天文库
浏览记录
ID:35808000
大小:6.37 MB
页数:37页
时间:2019-04-19
《数据结构教学课件作者李学刚电子课件源代码02单元2线性表.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、单元2线性表源代码SC020201020011.源代码编号SC020201020012.源代码来源单元2线性表2.2.2.13.问题描述顺序表的初始化4.程序代码voidInitList(SeqList*L){//将当前表L的表长L->length置为0L->length=0;}SC020201020021.源代码编号SC020201020022.源代码来源单元2线性表2.2.2.23.问题描述求顺序表的长度4.程序代码intLengthList(SeqList*L){//返回顺序表L的表长L->lengthreturnL->length
2、;}SC020201020031.源代码编号SC020201020032.源代码来源单元2线性表2.2.2.33.问题描述取表元4.程序代码DataTypeGetList(SeqList*L,inti){//返回顺序表L的第i个结点的值L->data[i-1]returnL->data[i-1];}SC020201020041.源代码编号SC020201020042.源代码来源单元2线性表2.2.2.43.问题描述插入操作4.程序代码intInsertList(SeqList*L,DataTypet,inti){//将t插入顺序表L的第i
3、个结点的位置上intj;if(i<1
4、
5、i>L->length+1){puts("插入位置错");return0;}if(L->length>=ListSize){puts("表满不能插入");return0;}for(j=L->length-1;j>=i-1;j--)L->data[j+1]=L->data[j];//结点依次后移L->data[i-1]=t;//插入tL->length++;//表长加1return1;}SC020201020051.源代码编号SC020201020052.源代码来源单元2线性表2.2.2.53.问题描
6、述删除操作4.程序代码intDeleteList(SeqList*L,inti){//从顺序表L中删除第i个结点intj;if(i<1
7、
8、i>L->length){puts("删除位置错");return0;}if(L->length==0){puts("空表不能删除");return0;}for(j=i;j<=L->length-1;j++)L->data[j-1]=L->data[j];//结点依次前移L->length--;//表长减1return1;}SC020201020061.源代码编号SC020201020062.源代码来源
9、单元2线性表2.2.2.63.问题描述按值查找4.程序代码intLocateList(SeqList*L,DataTypet){//从顺序表L中查找值为t的结点,找到返回位置值i,否则返回-1inti=1;while(i<=L->length&&L->data[i-1]!=t)i++;if(L->data[i-1]==t)returni;elsereturn-1;}SC020201020071.源代码编号SC020201020072.源代码来源单元2线性表例2-13.问题描述设计一个菜单,根据用户的选择实现对线性表的求表长、取表元、插入和
10、退出的操作。要求:程序只有一个入口和一个出口。4.程序代码SC02020102007#include#include#include#defineListSize10//假定表容量为10typedefintDataType;//假定DataType的类型为int型typedefstruct{DataTypedata[ListSize];//向量data用于存放表结点intlength;//当前表的长度(结点数)}SeqList;intLengthList(SeqList*L){//返
11、回顺序表L的表长L->lengthreturnL->length;}DataTypeGetList(SeqList*L,inti){//返回顺序表L的第i个结点的值L->data[i-1]returnL->data[i-1];}intInsertList(SeqList*L,DataTypet,inti){//将t插入顺序表L的第i个结点的位置上intj;if(i<1
12、
13、i>L->length+1){puts("插入位置错");return0;}if(L->length>=ListSize){puts("表满不能插入");return0;
14、}for(j=L->length-1;j>=i-1;j--)L->data[j+1]=L->data[j];//结点依次后移L->data[i-1]=t;//插入tL->length++;//
此文档下载收益归作者所有