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

狂妄少女 分享 2020-04-15 下载文档

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; }

四 实验结果:


数据结构第一次上机实验报告 (2).doc 将本文的Word文档下载到电脑

下一篇:教学论文浅谈“体态律动”在音乐教学中的运用 陆茜

相关推荐
相关阅读
本类排行
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 7 元

支付方式:

开通VIP包月会员 特价:29元/月

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