c++++ stl 中的哈希表函数可快速查找键值对,包括:std::unordered_map:未排序哈希表,存储键值对std::unordered_multimap:未排序多值哈希表,一个键可对应多个值std::unordered_set:未排序哈希表,仅存储键,无关联值std::unordered_multiset:未排序多值哈希表,允许存储重复键

C++ 的 STL 函数:哈希表
介绍
哈希表是一种数据结构,它通过将键值对存储在数组中,使用哈希函数将其映射到键,来实现快速寻址。C++ 标准模板库 (STL) 提供了多种 STL 函数用于创建和操作哈希表。
立即学习“C++免费学习笔记(深入)”;
std::unordered_map
std::unordered_map 是一个未排序的哈希表,它使用键值对的形式存储元素。其主要函数包括:
insert():插入一个键值对到哈希表中。find():查找一个键并返回其对应的值。erase():从哈希表中删除一个键。clear():清除哈希表中的所有元素。
std::unordered_multimap
std::unordered_multimap 与 std::unordered_map 类似,但它允许一个键对应多个值(多值映射)。
std::unordered_set
std::unordered_set 是一种未排序的哈希表,它只存储键,而不存储值。其主要函数包括:
insert():插入一个键到哈希表中。find():查找一个键。erase():从哈希表中删除一个键。clear():清除哈希表中的所有键。
std::unordered_multiset
std::unordered_multiset 与 std::unordered_set 类似,但它允许存储重复键。
实战案例
#include #include int main(){ // 创建一个 std::unordered_map std::unordered_map myMap; // 插入键值对 myMap["Alice"] = 25; myMap["Bob"] = 30; // 查找一个键 int age = myMap["Alice"]; std::cout << "Alice's age: " << age << std::endl; // 移除键 myMap.erase("Bob"); // 遍历哈希表 for (auto it = myMap.begin(); it != myMap.end(); ++it) { std::cout <first < " <second << std::endl; } return 0;}
输出:
Alice's age: 25Alice -> 25
以上就是C++ 函数的 STL 函数有哪些用于哈希表?的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1460307.html
微信扫一扫
支付宝扫一扫