阅读以下说明和 C 函数,填充函数中的空缺,将解答填入答题纸的对应栏内。
【说明】
己知两个整数数组 A 和 B 中分别存放了长度为 m 和 n 的两个非递减有序序列,函数 Adjustment(A,B,m,n)的功能是合并两个非递减序列,并将序列的前m个整数存入A中,其余元素依序存入 B 中。
例如:
合并过程如下:从数组 A 的第一个元素开始处理。用数组 B 的最小元素 B[0]与数组 A 的当前元素比较,若 A 的元素较小,则继续考查 A 的下一个元素;否则,先将A的最大元素暂存入temp ,然后移动A中的元素挪出空闲单元并将 B[0]插入数组 A ,最后将暂存在temp 中的数据插入数组B的适当位置(保持 B的有序性)。如此重复,直到A中所有元素都不大于B中所有元素为止。
【C 函数】
void Adjustment(int A[] ,int B[] ,int m ,int n)
{ /*数组 A 有 m 个元素,数组 B 有 n 个元素*/
int i ,k ,temp;
for(i = 0; i < m; i++)
{
if (A[i] <= B[0]) continue;
temp =(1); /*将 A 中的最大元素备份至 temp */
/*从后往前依次考查 A 的元素,移动 A 的元素并将来自 B 的最小元素插入 A 中*/
for(k = m-1; (2); k--)
A[k] = A[k-1];
A[i] =(3);
/*将备份在 temp 的数据插入数组 B 的适当位置*/
for(k = 1;(4)&& k < n; k++)
B[k-1] = B[k];
B[k-1] =(5);
}
}