在这里我们假设两个数组为整型数组
/**
* @param array1 数组1
* @param array2 数组2
* @return 归并后的数组
*/
public static int[] merge(int array1[],int array2[] )
{
int[] newArray=new int[array1.length+array2.length]; //开辟新数组
int min=array1.length<=array2.length?array1.length:array2.length; //找出两个数组中的最小长度
int max=array1.length>=array2.length?array1.length:array2.length; //找出两个数组中的组大长度
int[] longArray=array1.length>=array2.length?array1:array2; //找出两个数组中长度最大的数组
int j=0;
for(int i=0;i<min;i++) //间隔排序
{
newArray[j++]=array1[i];
newArray[j++]=array2[i];
}
for(int k=min;k<max;k++) //剩余部分直接排序
{
newArray[j++]=longArray[k];
}
return newArray;
}