leetcode的时候做350.两个数组的交集Ⅱ,发现两个提交的数据差的很多,以前没思考过这个问题,最开始没用else if,用的每个if 里面加continue结束本次循环,8ms 9.6MB,然后看了眼有人发的题解,跟我数据差很多,我就试了一下,还真有差这么多
class Solution {
public:
vector<int> intersect(vector<int>& nums1, vector<int>& nums2) {
vector<int> res;
sort(nums1.begin(), nums1.end());
sort(nums2.begin(), nums2.end());
vector<int>::iterator it1 = nums1.begin(), it2 = nums2.begin();
for(; it1 != nums1.end() && it2 != nums2.end();){
if(*it1 < *it2){
it1++;
}
else if(*it1 == *it2){
res.push_back(*it1);
it1++;
it2++;
}
else if(*it1 > *it2){
it2++;
}
}
return res;
}
};
记录一下我的思想盲区