版权声明:未经原作者允许不得转载本文内容,否则将视为侵权 https://blog.csdn.net/springhammer/article/details/88617542
数据结构-线性表合并 C语言源码
#include<stdio.h>
#include<stdlib.h>
struct HB{
int*elem;
int length;
};
void ko(HB& l,int n)
{
int hj;
l.elem=(int*)malloc(sizeof(int)*n);
for(int k=0;k<n;k++)
{
scanf("%d",&hj);
l.elem[k]=hj;
}
l.length =n;
}
void xianshi(HB l)
{
for(int i=0;i<l.length ;i++)
{
printf(" %d ",l.elem[i]);
}
}
void hebin(HB&a,HB&b,HB&c)
{
int max;
int min;
if(a.length>=b.length)
{
max=a.length;
min=b.length;
}
else{
max=b.length;
min=a.length;
}
c.elem=(int*)malloc(max*sizeof(int));
for(int i=0;i<min;i++)
{
if(a.elem[i]>=b.elem[i])
{
c.elem[i]=a.elem[i];
}
else{
c.elem[i]=b.elem[i];
}
}
if(a.length>=b.length )
{
for(int j=min;j<max;j++)
{
c.elem[j]=a.elem[j];
}
}
else{
for(int j=min;j<max;j++)
{
c.elem[j]=b.elem[j];
}
}
c.length=max;
}
main()
{
int n,m;
HB a,b,c;
printf("请输入第一个表长");
scanf("%d",&n);
printf("输入内容");
ko(a,n);
printf("请输入第二个表长");
scanf("%d",&m);
printf("输入内容");
ko(b,m);
hebin(a,b,c);
printf("合并后为%d\n",c.length );
xianshi(c);
return 0;
}
快看,这才是重点!我想能看到这里的同学,无外乎两种人:来拷贝代码的人 和 来拷贝代码的人。
但,在拷贝走的时候,你要想清楚一件事,把代码拷走之后有个蛋用,搞明白对你来说才是最重要的。
好了,就酱紫。
老铁,这要是都不赞,说不过去吧!!!哦,对了,你这么好看,关注一下呗。。。
最后对自己说:
你现在所遭遇的每一个不幸,都来自一个不肯努力的曾经。