当前位置: 首页 > news >正文

C++——哈希函数(unordered_map /unordered_set)

一、核心区别

容器存储结构用途
unordered_set<T>只存值去重、快速判断元素是否存在
unordered_map<K,V>键值对 key→value计数、映射、存对应关系

共同点:哈希实现,查找 O (1),内部无序

二、unordered_set 常用函数

unordered_set<int> s;


1.插入

s.insert(x); 插入元素,自动去重

2.查找(高频)

s.count(x); 存在返回 1,不存在返回 0

auto it = s.find(x); 找到返回迭代器,没找到返回s.end()

3.删除

s.erase(x); 删除元素 x

s.clear(); 清空全部

4.大小 / 判空

s.size(); 元素个数

s.empty(); 是否为空

5.遍历

for(auto& x : s) {}


三、unordered_map 常用函数

unordered_map<char, int> mp;


1.插入 / 赋值(2 种)

mp[key] = val; 最常用,key 不存在则自动创建

mp.insert({key, val}); 插入键值对

2.查找(高频)

mp.count(key); 判断 key 是否存在,返回 0/1

auto it = mp.find(key); 找 key 的迭代器

3.取值

mp[key]; 直接取 value(key 不存在会默认创建)

it->first 取 key;it->second 取 value

4.删除

mp.erase(key); 删除对应键值对

mp.clear(); 清空

5.大小 / 判空

mp.size();

mp.empty();

6.遍历

for(auto& p : mp) { p.first; p.second; }


四、刷题核心口诀

  1. 只查有没有、去重 → 用 unordered_set
  2. 需要计数、存对应关系 → 用 unordered_map
  3. count 只能返回 0/1,unordered_map 统计次数直接用mp[key]++
  4. 两者都无序,不能依赖遍历顺序
  5. 查找优先用count,取值优先用[]
http://www.jsqmd.com/news/841996/

相关文章:

  • 2026西充消防维保公司名录:南充消防维保公司排名、南充消防维保公司电话、南部消防检测公司、南阆中消防检测公司咨询电话选择指南 - 优质品牌商家
  • 基于天机学堂学习笔记视频的高并发点赞优化及XXL_JOB定时异步操作(简易版快速复习)
  • [测试工具] Playwright Skill 和 Codex Chrome 浏览器操控的异同
  • 2026年公司文化专题片拍摄公司排行榜:行业深度解析
  • GEE 进阶:打造个人专属的 JavaScript 工具库
  • NotebookLM戏剧研究辅助终极配置手册:兼容斯坦尼体系笔记、布莱希特间离批注与后结构主义文本解构的4层提示工程架构
  • 全光谱大路灯是不是智商税?揭秘护眼大路灯十强选手,全面拆解
  • 终极Windows系统优化指南:用Dism++让电脑重获新生
  • Grafana 从 8.x 升级到 9.x 版本需要注意哪些破坏性变更?
  • 如何用Project Graph构建非线性知识网络:5个颠覆性思维工具技巧
  • 科技赋能,提升外宾来华旅游体验
  • 2026年4月安全生产许可证代办公司推荐,食品生产许可证代办/营业执照年检/营业执照代办,安全生产许可证代办门店推荐 - 品牌推荐师
  • 一种三维建筑物模型外轮廓的提取方法
  • Spring Boot外部化配置深度解析
  • Ti AWR2243实测:毫米波雷达通道积累,选相干还是非相干?一个实验讲清楚
  • 科辉荣盛:定制化网站开发,赋能企业数字化增长
  • 告别预编译包!手把手教你为Qt6项目定制编译OpenCV,解锁WITH_QT支持
  • Yii2开发效率革命:VSCode桥接器实现代码热重载
  • 魔兽争霸III终极优化指南:7个实用方案让经典游戏完美适配现代硬件
  • FOC如何控制速度力矩大小,以及无感FOC检测电角度的方法
  • Honey Select 2终极增强补丁:一站式解决游戏语言与功能限制
  • 2026年当下西安工商注册服务优选:西安筑利财务管理有限公司深度解析 - 2026年企业推荐榜
  • ffmpeg-static 6.1.1深度实战指南:告别编译烦恼,一键部署音视频处理环境
  • RedHat10 安装MS SQL Server2025
  • 从零构建多智能体系统:基于Strand思维与事件驱动的AI应用开发实践
  • 2026激光水幕技术全解析:激光水幕系统工程/激光水幕设计施工/激光水幕音乐喷泉厂家/重庆音乐喷泉厂家/音乐喷泉安装/选择指南 - 优质品牌商家
  • 告别内网穿透:基于Debian12与公网IPv6 DDNS的轻量级服务器部署指南
  • Fere AI 技术深度解析:面向加密货币与预测市场的自主交易智能体架构
  • 2026年最实用的在线视频去水印工具!6款高能免费工具深度测评
  • 数据血缘是什么?怎么建设数据血缘?