用c++实现将哈希表中键值为key的元素设定值改为value
时间: 2024-02-03 09:14:54 浏览: 187
哈希表C++实现
在 C++ 中,可以使用 `unordered_map` 类来实现哈希表。要将哈希表中键值为 key 的元素设定值改为 value,可以使用如下代码:
```c++
#include <unordered_map>
void updateValue(std::unordered_map<int, int>& hashMap, int key, int value)
{
// 查找键为key的元素
auto it = hashMap.find(key);
if (it != hashMap.end()) {
// 找到了,更新值为value
it->second = value;
} else {
// 没找到,插入新元素
hashMap.insert({key, value});
}
}
```
这里的 `unordered_map` 类模板接受两个参数,第一个参数是键类型,第二个参数是值类型。在上面的代码中,我们将键类型设置为 `int`,值类型也设置为 `int`。可以根据需要修改这两个类型。
函数 `updateValue` 接受三个参数,第一个参数是要更新的哈希表,第二个参数是要更新的键值,第三个参数是要设置的新值。函数首先使用 `find` 函数查找键为 `key` 的元素,如果找到了就更新值为 `value`,否则插入一个新元素。
阅读全文