如何用C语言编写算法实现将两个递增顺序表合并为一个递增顺序表?

2024-12-16 14:23:08
推荐回答(1个)
回答1:

bool Merge(SeqList A, SeqList B, SeqList &C)
{ //合并有序顺序表A与B成为一个新的有序顺序表C
if(A.length+B.length>C.maxSize) //大于顺序表的最大长度
return false;
int i=0,j=0,k=0;
while(i{ //循环,两两比较,小者存入结果表
if(A.data[i] < B.data[j])
C.data[k++] = A.data[i++];
else C.data[k++]=B.data[j++];
}
while(iC.data[k++] =A.data[i++];
while(jC.data[k++] = B.data[j++];
C.length=k;
return true;
}