问题:array1,array2为两个有序的升序数组,将array1和array2合并为一个升序有序数组
1.合并两个有序数组array1,array2,借助数组array3。从头开始,将array1的第一个元素和array2的第一个元素比较,小的放到array3中。
#include<stdio.h>
#define MAX 15
//合并两个有序数组a,b,借助数组c
void MergeArray(int array1[], int len1, int array2[], int len2, int array3[], int len3)
{
if (len3 < len1 + len2)
return;
int index1 = 0, index2 = 0, index3 = 0;
while (index1 < len1&&index2 < len2)
{
if (array1[index1] < array2[index2])
{
array3[index3++] = array1[index1++];
}
else
{
array3[index3++] = array2[index2++];
}
}
while (index1 < len1)
{
array3[index3++] = array1[index1++];
}
while (index2 < len2)
{
array3[index3++] = array2[index2++];
}
return;
}
int main()
{
int array1[] = { 1,3,5,7,9 };
int array2[] = { 2,4,6,8,9 }