哈希表代码实现c++
时间: 2024-11-12 13:16:08 浏览: 32
哈希表(也称为散列表)是一种常用的数据结构,它通过将键(key)映射到值(value)的方式提供高效的查找、插入和删除操作。在 C++ 中,标准库中的 unordered_map 或者 std::map 可以实现哈希表。
这里是一个简单的 unordered_map 示例,用于存储字符串及其对应的整数值:
```cpp
#include <unordered_map>
#include <string>
int main() {
// 创建一个空的无序地图
std::unordered_map<std::string, int> hashTable;
// 插入键值对
hashTable["apple"] = 1;
hashTable["banana"] = 2;
hashTable["cherry"] = 3;
// 查找并打印值
if (hashTable.find("banana") != hashTable.end()) {
std::cout << "Value of 'banana': " << hashTable["banana"] << std::endl;
}
// 删除元素(unordered_map的find不会改变内部状态)
hashTable.erase("cherry");
return 0;
}
```
在这个例子中,`std::unordered_map` 的 `find` 函数用于查找指定键,如果找到则返回对应的迭代器,`end()` 则表示映射结束,因此可以判断键是否存在。`erase` 函数用于删除指定键的项。
阅读全文