Given two sorted integer arrays A and B, merge B into A as one sorted array.
Note:
You may assume that A has enough space to hold additional elements from B. The number of elements initialized in A and B arem and n respectively.
public class Solution { public void merge(int A[], int m, int B[], int n) { // Start typing your Java solution below // DO NOT write main() function if(A.length == 0 && B.length == 0) return; int k = m + n - 1; int i = m -1; int j = n -1; while(i>=0 && j>=0){ if(A[i] > B[j]){ A[k] = A[i]; k--; i--; } else if(A[i] <= B[j]){ A[k] = B[j]; k--; j--; } } while(j>=0){ A[k] = B[j]; j--; k--; } } }
mistakes: 1) array length -1 2) take care of = for i j 3)B may has more numbers over A