88. Merge Sorted Array

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里,不需要去重

 

C++(3ms):

 1 class Solution {
 2 public:
 3     void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {
 4         int i = m-1 ;
 5         int j = n-1 ;
 6         int k = m+n-1 ;
 7         while(j >= 0){
 8             if (i >=0 &&  nums1[i] > nums2[j] ){
 9                 nums1[k--] = nums1[i--] ;
10             }else{
11                 nums1[k--] = nums2[j--] ;
12             }
13         }
14     }
15 };

 

java(0ms):

 1 class Solution {
 2     public void merge(int[] nums1, int m, int[] nums2, int n) {
 3         int i = m - 1 ;
 4         int j = n - 1 ;
 5         int k = m + n - 1 ;
 6         while(j >= 0){
 7             if (i >= 0 && nums1[i] > nums2[j])
 8                 nums1[k--] = nums1[i--] ;
 9             else
10                 nums1[k--] = nums2[j--] ;
11         }
12     }
13 }

 

posted @ 2017-09-21 09:08  __Meng  阅读(140)  评论(0编辑  收藏  举报