第一范文网 - 专业文章范例文档资料分享平台

数据结构第一次上机实验报告 (2)

来源:用户分享 时间:2020-04-15 本文由狂妄少女 分享 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

return true; }

bool ListDelete(SqList *&L,int i,ElemType &e)//删除顺序表中的一个元素 {

int j;

if(i<1||i>L->length) return false; i--;

e = L->data[i];

for(j = i;jlength-1;j++) L->data[j]=L->data[j+1]; L->length--; return true; }

void Sort(SqList *L)//对顺序表进行从小到大排序 {

int i,j;

ElemType temp;

for(i=0;ilength;i++) {

for(j=0;jlength-1-i;j++) {

if(L->data[j]>L->data[j+1]) {

temp=L->data[j];

L->data[j]=L->data[j+1]; L->data[j+1]=temp; } } } }

void MergeList(SqList *L,SqList *M,SqList *&N)//合并两个顺序表,及求出集合a,b的补集 {

InitList(N); ElemType x,y; int i=1,k=0,j=1;

while((i<=L->length)&&(j<=M->length)) {

GetElem(L,i,x); GetElem(M,j,y); if(x

ListInsert(N,++k,x);

++i; }

else if(x==y) {

ListInsert(N,++k,x); ++i; ++j; } else {

ListInsert(N,++k,y); ++j; } }

while(i<=L->length) {

GetElem(L,i++,x); ListInsert(N,++k,x); }

while(j<=M->length) {

GetElem(M,j++,y); ListInsert(N,++k,y); } }

void jiao(SqList *L,SqList *M,SqList *&S)//求出 {

InitList(S); ElemType x,y; int k=0,j,i;

for(i=1;i<=L->length;i++) {

GetElem(L,i,x);

for(j=1;j<=M->length;j++) {

GetElem(M,j,y); if(x==y) {

ListInsert(S,++k,x); break; }

}

} }

void chai(SqList *L,SqList *M,SqList *&T) {

InitList(T); ElemType x,y; int k=0,j,i;

for(i=1;i<=L->length;i++) {

GetElem(L,i,x);

for(j=1;j<=M->length;j++) {

GetElem(M,j,y); if(x==y) {

break; }

}

if(j>M->length){

ListInsert(T,++k,x); } } }

int main() {

SqList *L; SqList *M; SqList *N; SqList *S; SqList *T; ElemType e;

printf(\顺序表的基本运算如下:\\n\

printf(\初始化顺序表L,M,初始化集合A,B\\n\ InitList(L); InitList(M);

printf(\初始化集合A:依次采用尾插法插入c a e h元素\\n\ ListInsert(L,1,'c'); ListInsert(L,2,'a'); ListInsert(L,3,'e'); ListInsert(L,4,'h');

printf(\初始化集合B:依次采用尾插法插入f h b g d a元素\\n\

ListInsert(M,1,'f'); ListInsert(M,2,'h'); ListInsert(M,3,'b'); ListInsert(M,4,'g'); ListInsert(M,5,'d'); ListInsert(M,6,'a');

printf(\输出原集合A:\\n\ DispList(L);

printf(\输出原集合B:\\n\ DispList(M);

printf(\输出有序集合A\\n\ Sort(L); DispList(L);

printf(\输出有序集合B\\n\ Sort(M); DispList(M);

printf(\集合的并C\\n\ MergeList(L,M,N); DispList(N);

printf(\集合的交C\\n\ jiao(L,M,S); DispList(S);

printf(\集合差C\\n\ chai(L,M,T); DispList(T);

printf(\释放顺序表L\\n\ DestroyList(L); return 0; }

四 实验结果:

搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新教育文库数据结构第一次上机实验报告 (2)全文阅读和word下载服务。

数据结构第一次上机实验报告 (2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/wenku/934455.html(转载请注明文章来源)
热门推荐
Copyright © 2018-2022 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top