mirror of
https://github.com/arkorty/LeetCode.git
synced 2026-03-17 16:51:46 +00:00
Initial commit
This commit is contained in:
43
Easy/intersection-of-two-arrays-ii/solution.cpp
Normal file
43
Easy/intersection-of-two-arrays-ii/solution.cpp
Normal file
@@ -0,0 +1,43 @@
|
||||
class Solution {
|
||||
public:
|
||||
/*
|
||||
std::vector<int> intersect(std::vector<int> &nums1,
|
||||
std::vector<int> &nums2) {
|
||||
std::unordered_map<int, int> hmap;
|
||||
std::vector<int> rslt;
|
||||
|
||||
for (int i = 0; i < nums1.size(); ++i)
|
||||
++hmap[nums1[i]];
|
||||
|
||||
for (int i = 0; i < nums2.size(); ++i)
|
||||
if (hmap[nums2[i]] > 0) {
|
||||
--hmap[nums2[i]];
|
||||
rslt.push_back(nums2[i]);
|
||||
}
|
||||
|
||||
return rslt;
|
||||
}
|
||||
*/
|
||||
|
||||
std::vector<int> intersect(std::vector<int> &nums1,
|
||||
std::vector<int> &nums2) {
|
||||
std::sort(nums1.begin(), nums1.end());
|
||||
std::sort(nums2.begin(), nums2.end());
|
||||
std::vector<int> rslt;
|
||||
|
||||
int i = 0, j = 0;
|
||||
while (i < nums1.size() && j < nums2.size()) {
|
||||
if (nums1[i] == nums2[j]) {
|
||||
rslt.push_back(nums1[i]);
|
||||
++i;
|
||||
++j;
|
||||
} else if (nums1[i] < nums2[j]) {
|
||||
++i;
|
||||
} else if (nums1[i] > nums2[j]) {
|
||||
++j;
|
||||
}
|
||||
}
|
||||
|
||||
return rslt;
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user