c语言编程,两个有序表其元素为递增有序,将此两表归并成一新的有序表并保持递增

来源:百度知道 编辑:UC知道 时间:2024/05/12 15:49:34
学习数据结构时遇到的问题

用两个For循环来解决这问题很快比如这两个数组是a,b要并到数组c
int num,count=0,i=0,j=0;
while(count<=a.length+b.length)
{
if(a[i]<b[j])
c[count++]=a[i++];
else c[count++]=b[j++];

}

sqlist union(sqlist sa,sqlist sb)
{int sc[maxsize];
sa.length=length(sa);
sb.length=length(sb);
maxsize=sa.length+sb.length;
i=0;
while(i<sa.length&&i<sb.length)
{j=0;
if(sa[i]<=sb[i]) {sc[j]=sa[i];j++}
i++;
}
while(i<sa.length&&i<sb.length)
{sc[j]=sa[i]?sa[i]:sb[i];i++;j++;}
}