首页 > 其他 > 详细

【leetcode】Merge Sorted Array

时间:2014-12-21 21:59:21      阅读:270      评论:0      收藏:0      [点我收藏+]

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 andn respectively.

 
从后往前,比较A[i]和B[j],把更大的元素放在A的末尾即可
 
 1 class Solution {
 2 public:
 3     void merge(int A[], int m, int B[], int n) {
 4        
 5         int last=m+n-1;
 6         int i=m-1;
 7         int j=n-1;
 8         while(i>=0||j>=0)
 9         {
10             if(i<0)
11             {
12                 A[last]=B[j];
13                 j--;
14                 last--;
15                 continue;
16             }
17            
18             if(j<0)
19             {
20                 A[last]=A[i];
21                 i--;
22                 last--;
23                 continue;
24             }
25            
26             if(A[i]>B[j])
27             {
28                 A[last]=A[i];
29                 i--;
30             }
31             else
32             {
33                 A[last]=B[j];
34                 j--;
35             }
36             last--;
37         }          
38     }
39 };

 

【leetcode】Merge Sorted Array

原文:http://www.cnblogs.com/reachteam/p/4177041.html

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