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

【leetcode】Merge Sorted Array

时间:2014-12-21 22:02:28      阅读:189      评论: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
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!