[88]Merge Sorted Array
2015-10-10 21:48
295 查看
【题目描述】
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 nums1and nums2 are m and n respectively.
【思路】
因为题目中讲到nums1中有足够的空间存储nums2中的元素,所以先将nums2中的元素赋值到nums1的元素后面,然后再利用sort函数对nums1中目前所有的元素排序一遍。
后来发现这个方法可能有点取巧,所以重新实现了一遍。
【代码】
class Solution {
public:
void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {
int i,j;
i=m-1;
j=n-1;
while(i>=0&&j>=0){
if(nums1[i]>nums2[j]) nums1[i+j+1]=nums1[i--];
else nums1[i+j+1]=nums2[j--];
}
while(j>=0) nums1[j]=nums2[j--];
}
};
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 nums1and nums2 are m and n respectively.
【思路】
因为题目中讲到nums1中有足够的空间存储nums2中的元素,所以先将nums2中的元素赋值到nums1的元素后面,然后再利用sort函数对nums1中目前所有的元素排序一遍。
后来发现这个方法可能有点取巧,所以重新实现了一遍。
【代码】
class Solution { public: void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) { for(int i=m;i<n+m;i++) { nums1[i]=nums2[i-m]; } sort(nums1.begin(),nums1.end()); } };
class Solution {
public:
void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {
int i,j;
i=m-1;
j=n-1;
while(i>=0&&j>=0){
if(nums1[i]>nums2[j]) nums1[i+j+1]=nums1[i--];
else nums1[i+j+1]=nums2[j--];
}
while(j>=0) nums1[j]=nums2[j--];
}
};
相关文章推荐
- MATLAB中MEX文件的编写与调试
- 【天池大数据赛题解析】资金流入流出预测(附Top4答辩ppt)
- JavaScript 验证提交文件的信息
- 11、基于annotation的onetoone的配置
- 黑盒测试用例设计方法
- MySQL group_concat 1024 大小
- 10、基于annotation的配置 many2one
- 沟通管理、风险管理、采购管理
- mysql timestamp类型字段的CURRENT_TIMESTAMP与ON UPDATE CURRENT_TIMESTAMP属性
- 沟通管理、风险管理、采购管理
- 使用Fragment填充ViewPager
- 安装Eclipse Maven插件的几种方法
- STM32入门篇之通用定时器彻底研究
- js里实现队列与堆栈
- Android 自定义圆形图片
- 红黑树
- 注意的点
- SQL Server 2005 更改安装路径目录的问题,
- session跨域问题解决方案(转载,其中试验一个方法,成功)
- jvm参数设置