码迷,mamicode.com
首页 > 其他好文 > 详细

leetCode-Merge Sorted Array

时间:2017-11-26 21:02:22      阅读:134      评论:0      收藏:0      [点我收藏+]

标签:desc   cti   class   指针   note   元素   ini   number   and   

Description:
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.

Solution:

//初始化三个指针,i指向A含有元素的尾部,j指向B的尾部,k指向A存放元素的尾部
//对A和B逆序遍历,从两个数组中找出最大元素存放一次放到k指向的位置
//最后看看B有没有放完(不用管A,因为如果i>=0说明剩余元素就该放在原位置上,如果i<0,说明j没有放完,还得继续遍历B)
class Solution {
   public void merge(int A[], int m, int B[], int n) {
    int i=m-1, j=n-1, k=m+n-1;
    while (i>-1 && j>-1) A[k--]= (A[i]>B[j]) ? A[i--] : B[j--];
    while (j>-1)         A[k--]=B[j--];
}
}

 

 

leetCode-Merge Sorted Array

标签:desc   cti   class   指针   note   元素   ini   number   and   

原文地址:http://www.cnblogs.com/kevincong/p/7900363.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!