计算机数据结构

来源:百度知道 编辑:UC知道 时间:2024/05/27 08:22:05
.假设以两个元素依值递增有序排列的线性表A和B分别表示两个集合(即同一表的元素值各不相同)试对顺序表编写算法,求A和B元素的交集存于A中,并保持元素递增有序

可用插入排序法,在AB两数组的末尾设置尾哨(∞),将数组AB中的数依次插入到数组C中,最后将数组A指向C数组即可;算法如下:

i=a.length,j=b.length;
a[i]=∞;b[j]=∞;
n=i+j;
i=0;j=0;
for(int k=0;k<n;k++)
{
if(a[i]<=b[j])
{
c[k]=a[i];
i++;
}
else{
c[k]=b[j];
j++;
}
}
a=c;