给定两个有序的数组arr1和arr2,将两个数组合并成一个新的有序数组
示例:
left_arr={1,4,7,9,19,25}
right_arr={3,5,7,14,26,37,49,50}
合并之后:
arr3={1,3,4,7,7,9,14,19,25,26,37,49,50}
-思路:定一个一个边长的数据,长度为两个数组的长之和;设想把两个数组分别左右顺序排序,然后同时遍历两个数组,对比left_arr[i]和right_arr[j]两个数,开始进行左右两个小的那个组放到arr3中,并且小的那边的数组index+1,而大的那边数据index不变,以此不停进行交替遍历,直至不能遍历为止,如果遇到左右两个数相等,则同时放到arr3中并且两个数组的index都+1,如果一方先遍历结束,怎该方数组不在index+1,另一方的数据以此放入arr3,左右数组都遍历结束则停止遍历,合并完毕,如下图:
代码实现如下(Java):
public static void main(String[] args) {
int[] left_arr={
1,4,7,9,19,25};
int[] right_arr=