首页 > 其他 > 详细

leetcode 88. Merge Sorted Array

时间:2019-02-13 23:33:03      阅读:180      评论:0      收藏:0      [点我收藏+]

Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array.

Note:

  • The number of elements initialized in nums1 and nums2are m and n respectively.
  • You may assume that nums1 has enough space (size that is greater or equal to m + n) to hold additional elements from nums2.

Example:

Input:
nums1 = [1,2,3,0,0,0], m = 3
nums2 = [2,5,6],       n = 3

Output: [1,2,2,3,5,6]

 

从后向前归并,将较大的值直接放入nums1的末端。

class Solution {
    public void merge(int[] nums1, int m, int[] nums2, int n) {
        int i = m-1, j = n-1, k = m+n-1;
        while(i>-1 && j>-1) nums1[k--] = (nums1[i] > nums2[j])? nums1[i--]: nums2[j--];
        while(j>-1) nums1[k--] = nums2[j--];
        
    }
}

 

leetcode 88. Merge Sorted Array

原文:https://www.cnblogs.com/jamieliu/p/10372169.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!