合并两个有序升序的整数数组A和B变成一个新的数组。新数组也要有序。
2020-07-07 12:16
211 查看
合并两个有序升序的整数数组A和B变成一个新的数组。新数组也要有序
样例 1:
输入: A=[1], B=[1] 输出:[1,1] 样例解释: 返回合并后的数组
样例 2:
输入: A=[1,2,3,4], B=[2,4,5,6] 输出: [1,2,2,3,4,4,5,6] 样例解释: 返回合并后的数组。
方法1:
功能实现
class Solution { public: vector<int> mergeSortedArray(vector<int> &A, vector<int> &B) { // write your code here int len1=A.size(); int len2=B.size(); int len = len1+len2; A.resize(len); for(int i=0;i<len2;i++){ A[len1+i]=B[i]; } sort(A.begin(),A.end()); return A; } }; void Display1(vector<int>&C){ vector<int> :: iterator it =C.begin(); while(it != C.end()){ cout << *it << " "; it++; } cout << endl; } void Display2(vector<int>&V){ int len=V.size(); for(int i=0;i<len;i++){ cout << V[i] << " "; } cout << endl; } void Display3(int a) { cout<<a<<" "; } void Display4(vector<int> a) { for(int i=0;i<a.size();i++){ cout<<a[i]<<" "; } }
功能测试
int main(){ vector<int> A; vector<int> B; A.push_back(1); A.push_back(2); A.push_back(4); A.push_back(5); A.push_back(7); B.push_back(4); B.push_back(6); B.push_back(8); B.push_back(9); B.push_back(10); Solution s; A=s.mergeSortedArray(A,B); for_each(A.begin(),A.end(),Display3); cout << endl; Display1(A); Display2(A); Display4(A); return 0; }
方法2:
功能实现
class Solution1{ public: vector<int> mergeSortedArray(vector<int> &A, vector<int> &B) { // write your code here int len1=A.size(); int len2=B.size(); int len = len1+len2; vector<int> C; C.resize(len); for(int i=0;i<len;i++){ if(i<len1){ C[i]=A[i]; } else{ C[i]=B[i-len1]; } } sort(C.begin(),C.end()); return C; } };
功能测试
int main(){ vector<int> A; vector<int> B; A.push_back(1); A.push_back(2); A.push_back(4); A.push_back(5); A.push_back(7); B.push_back(4); B.push_back(6); B.push_back(8); Solution1 s; vector<int> C; C=s.mergeSortedArray(A,B); for_each(C.begin(),C.end(),Display3); return 0; }
相关文章推荐
- 合并两个有序升序的整数数组A和B变成一个新的数组。新数组也要有序。
- 合并两个排序的整数数组A和B变成一个新的数组。新数组也要有序。
- 给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1中,使得 num1 成为一个有序数组。 注意: 你可以假设 nums1有足够的空间(空间大小大于或等于m + n
- 合并两个排序的整数数组A和B变成一个新的数组。
- 两个有序数组合并为一个有序数组
- 将两个有序数组归并为一个升序数组-Java实现
- 将任意整数插入到一个有序数组a中,假设a升序
- 如何将两个有序的一维数组合并为一个有序的一维数组合
- 线性表a、b为两个有序升序的线性表,编写一程序,使两个有序线性表合并成为一个有序升序线性表h
- java实现把两个有序数组合并到一个数组
- 给定一个有序整数数组,元素各不相同且按照升序排列,编写一个算法,创建一个高度最小的二叉查找树
- c程序:把两个已按升序排列的数组合并成一个升序数组,要求用函数实现(归并排序)。
- 两个有序数组合并为一个有序数组
- C 语言,将两个数组合并到另外一个数组中,并且合并之后的数组是有序的。
- java将两个有序数组合并成一个有序数组
- 输入一个升序数组和一个整数,在数组里面找两个数使它们相加的和为这个整数
- 合并两个有序数组为一个新的有序数组
- 两个有序数组合并成一个有序数组
- 合并有序的两个数字数组为一个
- 两个有序数组合并为一个有序数组