vector<int> intersection
时间: 2024-09-20 09:03:22 浏览: 42
`vector<int>` 是 C++ 中一种动态数组容器,通常用于存储整数类型的元素。"intersection" 在这个上下文中可能是指两个 `vector<int>` 的交集操作,即找出这两个向量中共有的元素。
在 C++ 中,如果你想要找到两个 `vector<int>` 的交集,你可以先将它们转换为集合(如 `set` 或 `unordered_set`),因为集合的数据结构天然支持查找元素是否存在以及快速的交集计算。以下是简单的步骤:
```cpp
#include <vector>
#include <set>
std::vector<int> intersection(const std::vector<int>& vec1, const std::vector<int>& vec2) {
std::set<int> set1(vec1.begin(), vec1.end());
std::set<int> set2(vec2.begin(), vec2.end());
std::vector<int> result;
for (int num : set1) {
if (set2.find(num) != set2.end()) {
result.push_back(num);
}
}
return result;
}
```
在这个例子中,我们首先创建了两个 `set`,然后遍历第一个 `set`,如果元素也在第二个 `set` 中,则添加到结果 `vector` 中。
阅读全文