首页 > 代码库 > LeetCode Merge Sorted Array

LeetCode Merge Sorted Array

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 (size that is greater or equal to m + n) to hold additional elements from B. The number of elements initialized in A and B are m and n respectively.

 

 1 public class Solution { 2     public void merge(int A[], int m, int B[], int n) { 3         int[] newA=new int[m+n]; 4         int indexA = 0,indexB=0; 5         int i=0; 6         while (indexA<m && indexB<n) { 7             if (A[indexA]<B[indexB]) { 8                 newA[i]=A[indexA]; 9                 indexA++;10             }else {11                 newA[i]=B[indexB];12                 indexB++;13             }14             ++i;15         }16         if (indexA==m) {17             for (int j = indexB; j < n; j++) {18                 newA[i]=B[j];19                 ++i;20             }21         }22         if (indexB==n) {23             for (int j = indexA; j < m; j++) {24                 newA[i]=A[j];25                 ++i;26             }27         }28         29         for (int j = 0; j < m+n; j++) {30             A[j]=newA[j];31         }32         33     }34 }

 

LeetCode Merge Sorted Array