unordered_map读取重复元素
时间: 2023-10-17 12:34:03 浏览: 203
The-phone-book.zip_Book 2
unordered_map是C++标准库中的容器,用于存储键-值对。它提供了快速的查找和插入操作,并且不允许重复的键。
如果你想读取unordered_map中的重复元素,你可以使用迭代器来遍历map,并判断每个元素的值是否有多个。
下面是一个示例代码,演示了如何读取unordered_map中的重复元素:
```cpp
#include <iostream>
#include <unordered_map>
int main() {
std::unordered_map<int, int> myMap;
// 添加一些键-值对
myMap[1] = 10;
myMap[2] = 20;
myMap[3] = 10; // 重复的值
myMap[4] = 30;
myMap[5] = 20; // 重复的值
// 遍历unordered_map
for (auto it = myMap.begin(); it != myMap.end(); ++it) {
std::cout << "Key: " << it->first << ", Value: " << it->second << std::endl;
}
// 读取重复元素
for (auto it = myMap.begin(); it != myMap.end(); ++it) {
if (myMap.count(it->second) > 1) {
std::cout << "Key: " << it->first << ", Value: " << it->second << " is a duplicate." << std::endl;
}
}
return 0;
}
```
这段代码首先创建了一个unordered_map,并插入了一些键-值对,其中包含了一些重复的值。然后使用迭代器遍历map,并通过判断值的重复次数来找到重复元素并输出。
希望这个示例能够解决你的问题。如果还有其他疑问,请随时提问。
阅读全文