合并两个排序的整数数组A和B变成一个新的数组。新数组也要有序。
样例 1:
输入: A=[1], B=[1]
输出:[1,1]
样例解释:
返回合并后的数组。
样例 2:
输入: A=[1,2,3,4], B=[2,4,5,6]
输出: [1,2,2,3,4,4,5,6]
样例解释:
返回合并后的数组。
思路:
先将两个数组拼接起来,然后排序。(还有简单的思路,这里暂时不实现)
实现代码:
import java.util.Arrays; public class Solution { public static void main(String args[]) { int[] A = { 3, 2, 1, 4, 5 }; int[] B = { 5, 4 }; ArrayTwoInsert testArrayTwoInsert = new ArrayTwoInsert(); testArrayTwoInsert.mergeSortedArray(A, B); } } class Sort { /** * 数组排序算法实现 */ public void bubble(int[] array) { /** * 冒泡排序实现 */ int length = array.length; for (int i = 0; i < length; i++) { for (int j = 0; j < length - i - 1; j++) { if (array[j] > array[j + 1]) { int tmp = array[j]; array[j] = array[j + 1]; array[j + 1] = tmp; } } } System.out.println(Arrays.toString(array)); } public void select(int[] array) { /** * 选择排序实现 */ int length = array.length; for (int i = 0; i < length; i++) { for (int j = i + 1; j < length; j++) { if (array[i] > array[j]) { int tmp = array[i]; array[i] = array[j]; array[j] = tmp; } } } System.out.println(Arrays.toString(array)); } } class ArrayTwoInsert { /** * 合并两个排序的整数数组A和B变成一个新的数组。新数组也要有序。(输入的两个数组已排序) */ public int[] mergeSortedArray(int[] A, int[] B) { int[] Twoarray = new int[A.length + B.length]; for (int i = 0; i < A.length; i++) { Twoarray[i] = A[i]; } for (int j = 0; j < B.length; j++) { Twoarray[A.length + j] = B[j]; } Sort testSort = new Sort(); testSort.select(Twoarray); System.out.println(Arrays.toString(Twoarray)); return Twoarray; } }