拼接两个升序数组,要求拼接后依然是升序

    public static void main(String[] args) {
       int[] arr1 = {1, 2, 3, 4, 5, 6};
       int[] arr2 = {6, 7, 8, 9, 10, 11};
       System.out.println(Arrays.toString(concat(arr1, arr2)));
  }

 
   static int[] concat(int[] array1, int[] array2) {
       int[] array3 = new int[array1.length + array2.length];
       for (int i = 0; i < array1.length; i++) {
           array3[i] = array1[i];
      }
       for (int i = array1.length; i < array3.length; i++) {
           array3[i] = array2[i - array1.length];
      }
       for (int i = 1; i < array3.length; i++) {
           int j = i;
           int temp = array3[j];
           while (j > 0 && temp < array3[j - 1]) {
               array3[j] = array3[j - 1];
               j--;
          }
           array3[j] = temp;
      }
       return array3;
  }
}

 

posted @ 2021-10-19 15:15  HelelLucifer  阅读(89)  评论(0)    收藏  举报