核心思想:新建一个顺序表Lc,从一个顺序表La取出一个元素,再从另一个顺序Lb表出取出一个元素,进行比较,将小的元素放到Lc中。
bool MergeList(Sqlist La,Sqlist Lb,Sqlist &Lc){
Lc.length=La.length+Lb.length;
Lc.elem=(ElemType *)malloc(Lc.length*sizeof(ElemType));
if(!Lc.elem) return false;
int i=0,j=0,k=0;
while(i<La.length&&j<Lb.length){
if(La.elem[i]<=Lb.elem[j]){
Lc.elem[k]=La.elem[i];
i++;
k++;
}
else{
Lc.elem[k]=Lb.elem[j];
j++;
k++;
}
}
while(i<La.length){
Lc.elem[k]=La.elem[i];
i++;
k++;
}
while(j<Lb.length){
Lc.elem[k]=Lb.elem[j];
j++;
k++;
}
}