C++ 哈希表查找符合条件的值:简单易懂的解释和示例代码
在 C++ 中,可以使用哈希表(std::unordered_map)来存储和查找键值对。要查找符合要求的值,可以遍历哈希表并检查每个键值对,判断其值是否符合要求。
以下是一个示例代码,演示了如何在哈希表中找到符合要求的值:
#include <iostream>
#include <unordered_map>
int main() {
std::unordered_map<std::string, int> myHash;
// 向哈希表中插入键值对
myHash['Alice'] = 25;
myHash['Bob'] = 30;
myHash['Charlie'] = 35;
// 查找符合要求的值
int targetAge;
std::cout << "请输入要查找的年龄:";
std::cin >> targetAge;
bool found = false;
for (const auto& pair : myHash) {
if (pair.second == targetAge) {
std::cout << "找到了年龄为 " << targetAge << " 的人,姓名为 " << pair.first << std::endl;
found = true;
}
}
if (!found) {
std::cout << "未找到年龄为 " << targetAge << " 的人" << std::endl;
}
return 0;
}
在这个示例中,我们创建了一个哈希表 myHash 并插入了一些键值对。然后,我们通过用户输入的目标年龄来查找符合要求的值。
我们使用一个循环遍历哈希表中的每个键值对,检查值是否与目标年龄相等。如果找到了符合要求的值,我们输出对应的键和值。如果未找到,我们输出未找到的提示信息。
需要注意的是,在这个示例中,我们假设哈希表的值都是整数类型。如果值的类型是其他类型,需要相应地进行修改。
希望这个简单的解释和示例代码能帮助你理解如何在哈希表中找到符合要求的值。如果还有任何问题,请随时提问。
原文地址: https://www.cveoy.top/t/topic/bMlI 著作权归作者所有。请勿转载和采集!