350. Intersection of Two Arrays II
2016-06-22 17:13
411 查看
Given two arrays, write a function to compute their intersection.
Example:
Given nums1 =
Note:
Each element in the result should appear as many times as it shows in both arrays.
The result can be in any order.
Follow up:
What if the given array is already sorted? How would you optimize your algorithm?
What if nums1's size is small compared to nums2's size? Which algorithm is better?
What if elements of nums2 are stored on disk, and the memory is limited such that you cannot load all elements into the memory at once?
===================
返回交叉元素,
注意:结果中每个元素应该出现和两个数组相同的次数,结果的顺序任意.
思路:排序+遍历
==
Example:
Given nums1 =
[1, 2, 2, 1], nums2 =
[2, 2], return
[2, 2].
Note:
Each element in the result should appear as many times as it shows in both arrays.
The result can be in any order.
Follow up:
What if the given array is already sorted? How would you optimize your algorithm?
What if nums1's size is small compared to nums2's size? Which algorithm is better?
What if elements of nums2 are stored on disk, and the memory is limited such that you cannot load all elements into the memory at once?
===================
返回交叉元素,
注意:结果中每个元素应该出现和两个数组相同的次数,结果的顺序任意.
思路:排序+遍历
==
class Solution { public: vector<int> intersect(vector<int>& nums1, vector<int>& nums2) { vector<int> re; sort(nums1.begin(),nums1.end()); sort(nums2.begin(),nums2.end()); vector<int>::iterator it1 = nums1.begin(); vector<int>::iterator it2 = nums2.begin(); for(;it1!=nums1.end() && it2!=nums2.end();){ if(*it1<*it2) it1++; else if(*it1 > *it2) it2++; else{ re.push_back(*it1); it1++; it2++; } } return re; } };
相关文章推荐
- Multiple build commands for output file
- ContextLoader中setContextInitializers(ApplicationContextInitializer<?>... initializers)的思考
- AndroidStudio 关于第三方so文件不全导致java.lang.UnsatisfiedLinkError解决办法
- Win7使用批处理配置IP地址
- Android Studio编译好的apk放在哪儿?
- hive 时间函数
- HTML5中使用postMessage实现两个网页间传递数据
- Postman interceptor
- java实现标准化考试系统详解(四)-----初始化操作实现
- 6月22日总结
- 服装设计研发办公应用APP
- js 压缩并解决iphone上传头像偏转
- 浅谈Android Settings模块架构
- 聊天系统的复制黏贴问题
- touch事件
- 如何将所有的进程运行在一个指定的CPU上
- /dev/sdc1 is apparently in use by the system; will not make a filesystem here!
- Android开发虚拟机的各种分辨率
- 对编译时异常和运行时异常的理解
- 屏幕宽高的获取