unordered_map
时间: 2023-08-14 11:13:16 浏览: 37
unordered_map是C++标准库中的数据结构之一,用于实现键值对的无序存储。它提供了一种快速查找和插入元素的方式,并且允许通过键来访问对应的值。unordered_map基于哈希表实现,因此查找和插入元素的时间复杂度为O(1)。
unordered_map的使用方法与普通的map类似,但它不会对元素进行排序。你可以使用键来访问对应的值,并且还可以通过迭代器遍历整个unordered_map。
以下是unordered_map的一些常见操作:
1. 插入元素:
```cpp
unordered_map<int, string> myMap;
myMap.insert({ 1, "apple" });
myMap.insert(make_pair(2, "banana"));
myMap[3] = "orange";
```
2. 访问元素:
```cpp
string fruit = myMap[1]; // 访问键为1的值,如果键不存在会自动插入一个默认值
auto it = myMap.find(2);
if (it != myMap.end()) {
cout << "Key: " << it->first << ", Value: " << it->second << endl;
}
```
3. 删除元素:
```cpp
myMap.erase(3); // 删除键为3的元素
```
4. 遍历unordered_map:
```cpp
for (auto it = myMap.begin(); it != myMap.end(); ++it) {
cout << "Key: " << it->first << ", Value: " << it->second << endl;
}
```
unordered_map还提供了其他一些操作,例如size()、count()、clear()等。
希望以上信息对你有帮助!如果你还有其他问题,请继续提问。