两数组的交ll
来源:互联网 发布:centos与linux区别 编辑:程序博客网 时间:2024/06/05 12:24
1.问题描述
计算两个数组的交
注意事项
每个元素出现次数得和在数组里一样
答案可以以任意顺序给出
nums1 = [1, 2, 2, 1]
, nums2 = [2, 2]
, 返回 [2, 2]
.
2.解题思路
先对两组数组进行排序,然后依次判断,找出相同的元素,放在一个新的向量里。
3.代码实现
class Solution {
public:
/**
* @param nums1 an integer array
* @param nums2 an integer array
* @return an integer array
*/
vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {
// Write your code here
vector<int>m;
if(nums1.size()!=0)
sort(nums1.begin(),nums1.end());
}
if(nums2.size()!=0)
{
sort(nums2.begin(),nums2.end());}
int i=nums1.size(),j=nums2.size();
if(i==0||j==0)
return m;
int k=0,l=0;
while(k<i&&l<j)
{
if(nums1[k]==nums2[l]){
m.push_back(nums1[k]);
k++;l++;
}
else{
if(nums1[k]<nums2[l]) k++;
if(nums1[k]>nums2[l]) l++;
}
}
return m;
}
};
4.感想
此题的关键在于先进行排序,然后找出相同元素。
- 两数组的交ll
- 两数组的交
- 两数组的交
- 两数组的交
- 两数组的交
- 两数组的交
- 两数组的交
- 两数组的交
- 两数组的交
- 两数组的交
- 两数组的交||
- 两数组的交
- 两数组的交
- 两数组的交
- 两数组的交
- 两数组的交
- 两数组的交||
- 两数组的交
- jvm工具
- 内部排序—快速排序
- vue +bootstrap 写的小例子
- caffe Resnet-50 finetune 所有代码+需要注意的地方
- 好用的工具
- 两数组的交ll
- Ubuntu用终端安装软件报错:E: Sub-process /usr/bin/dpkg returned an error code (1)
- JAVA面试题
- DOS与UNIX文件风格互转
- [生产力工具]github入门指南
- 两数组的交
- PAT (Advanced Level) Practise 1119 Pre- and Post-order Traversals (30)
- 视频学习笔记:Android ffmpeg解码多路h264视频并显示
- scrollWidth,clientWidth,offsetWidth的区别