import java.util.Arrays;

class MergeSortedArray {
  public void merge(int[] nums1, int m, int[] nums2, int n) {
    int a = m - 1;
    int b = n - 1;
    if (m == 0) {
      System.arraycopy(nums2, 0, nums1, 0, n);
    } else if (n == 0) {
      System.arraycopy(nums1, 0, nums1, 0, m);
    } else {
      for (int i = m + n - 1; i >= 0; i--) {
        if (nums1[a] > nums2[b]) {
          nums1[i] = nums1[a];
          if (--a < 0) {
            System.arraycopy(nums2, 0, nums1, 0, b+1);
            break;
          }
        } else {
          nums1[i] = nums2[b];
          if (--b < 0) break;
        }
      }
    }
    System.out.println(Arrays.toString(nums1));
  }

  public static void main(String[] args) {
    int[] nums1 = new int[10];
    nums1[0] = 2;
    nums1[1] = 0;
    nums1[2] = 3;
    int[] nums2 = new int[] {1};
    new MergeSortedArray().merge(nums1, 1, nums2, 1);
  }
}
@@ -671,16 +671,565 @@
 );%0A  %7D%0A%0A
+  public void mergeStyled(int%5B%5D nums1, int m, int%5B%5D nums2, int n) %7B%0A    int a = m - 1;%0A    int b = n - 1;%0A    int c = m + n - 1;%0A    while (c %3E= 0) %7B%0A      if (a %3E=0 && b %3E= 0) %7B%0A        if (nums1%5Ba%5D %3E nums2%5Bb%5D) %7B%0A          nums1%5Bc%5D = nums1%5Ba%5D;%0A          a--;%0A        %7D else %7B%0A          nums1%5Bc%5D = nums2%5Bb%5D;%0A          b--;%0A        %7D%0A      %7D else if (a %3E= 0) %7B%0A        nums1%5Bc%5D = nums1%5Ba%5D;%0A        a--;%0A      %7D else if (b %3E= 0) %7B%0A        nums1%5Bc%5D = nums2%5Bb%5D;%0A        b--;%0A      %7D%0A      c--;%0A    %7D%0A    System.out.println(Arrays.toString(nums1));%0A  %7D%0A%0A
   public
@@ -1413,16 +1413,22 @@
 ().merge
+Styled
 (nums1, 

Add cleaner solution 88