map哈希表基本操作
时间: 2023-10-20 12:35:05 浏览: 91
哈希表是一种常用的数据结构,用于存储键值对。在 C++ 中,可以使用标准库中的 `unordered_map` 来实现哈希表。
基本的操作包括插入、删除、查找和遍历。下面是对应的操作示例:
1. 插入元素:
```cpp
#include <unordered_map>
using namespace std;
int main() {
unordered_map<string, int> myMap;
// 插入单个元素
myMap["apple"] = 1;
// 插入多个元素
myMap.insert(make_pair("banana", 2));
myMap.insert({"orange", 3});
return 0;
}
```
2. 删除元素:
```cpp
#include <unordered_map>
using namespace std;
int main() {
unordered_map<string, int> myMap;
myMap["apple"] = 1;
myMap["banana"] = 2;
myMap["orange"] = 3;
// 删除单个元素
myMap.erase("apple");
// 删除多个元素
myMap.erase({"banana", "orange"});
return 0;
}
```
3. 查找元素:
```cpp
#include <unordered_map>
#include <iostream>
using namespace std;
int main() {
unordered_map<string, int> myMap;
myMap["apple"] = 1;
myMap["banana"] = 2;
myMap["orange"] = 3;
// 使用键进行查找
if (myMap.find("banana") != myMap.end()) {
cout << "Found banana!" << endl;
cout << "Value: " << myMap["banana"] << endl;
}
return 0;
}
```
4. 遍历元素:
```cpp
#include <unordered_map>
#include <iostream>
using namespace std;
int main() {
unordered_map<string, int> myMap;
myMap["apple"] = 1;
myMap["banana"] = 2;
myMap["orange"] = 3;
// 使用迭代器遍历
for (auto it = myMap.begin(); it != myMap.end(); ++it) {
cout << "Key: " << it->first << ", Value: " << it->second << endl;
}
return 0;
}
```
这些是 `unordered_map` 的基本操作示例,你可以根据需要进行相应的调整。
阅读全文