c语言怎么把两个数组合成一个?
合并数组的操作,具体算法依赖于合并的规则。
其通用流程如下:
1 建立一个足够容纳两个数组所有元素的目标数组。如果规则规定将一个数组合并到另一个之中,那么需要保证目标数组有可以容纳两个数组的空间,否则会出现越界。
2 遍历其中一个数组,并赋值到目标数组中。如果是一个数组合并到另一个,那么此步可以省略;
3 遍历另一个数组,按照规则插入到目标数组中。
在不同规则下,合并算法会有差异,如将长为lb的B数组附加到长为la的A数组结尾的操作,可以写作
int i;
for(i = 0; i < lb; i ++)
A[la+i]=B[i];而将长度均为l的数组A,B,交替合并到C中,可以写作
int i;
for(i = 0; i < l; i ++)
{
C[i*2] = A[i];
C[i*2+1] = B[i];
}不管是何种方式,合并的本质就是,把A和B的每个元素,赋值到目标数组的对应位置上即可。
Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有