Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array.
Note:
You may assume that nums1 has enough space (size that is greater or equal to m + n) to hold additional elements from nums2. The number of elements initialized in nums1 and nums2 are m and n respectively.
题意:整合两个有序数组为一个
思路:一直把nums1和nums2中最后一个数中大的放到nums1后面。最后如果nums2中还有数没遍历完,再把剩余的添加到nums1对应位置。
public class Solution {
public void Merge(int[] nums1, int m, int[] nums2, int n) {
int count = m + n -1;
m--; n--;
while (m >= 0 && n >= 0) nums1[count--] = nums1[m] >= nums2[n] ? nums1[m--] : nums2[n--];
while (n >= 0) nums1[count--] = nums2[n--];
}
}