news 2026/4/29 3:59:05

29.哈希(上)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
29.哈希(上)

插入的key已经有了,就返回false,没有就true,

改造一下:也可以

自己走隐式类型转换,构造iteraator要用当前节点和 根节点指针

相等了就插入失败,返回相等的

这里也是插入成功,返回新插入的节点,新节点不能用current,因为父亲叔叔 红的要变色连续往上处理,所以

newnode记录一下,不然current连续变色处理,不一定是新节点,neewnode记录新节点就行

这些地方就都得跟着改

库里set这里iterator用的const iterator支持这个地方就会有坑,因为 底层是普通迭代器,就得支持腹痛迭代器到const 迭代器的转换。

然后搭operator【】:

注意两个pair,

可以继续加拷贝析构

哈希

两个容器C++11的

因为set底层是搜索树,所以是有序地,而undersort是无序的,

去掉unorder就是有序,

怎么去重 如果有了就插入不就去了

哈希更快,绝多数场景可以用unorder set 和unordermap

数据有序情况:

有序用 map set 其余情况可以用 unorderset unordermap

降序可以给greater仿函数,里面用一个仿函数,换参数位置就可以实现大于小于,

比如说计数排序,

数据比较分散就不行,适合数据范围比较集中的整形,

假设32个位,模后十个位,前22个位想不想同不重要,后十个值相同摸出来都是一样的,尽可能要避免2的次方。取13就很好

前面都是零后面16位都是1,可与 就取后16位了。但是后16位相同的值不就冲突了, 就把前16位取出来给给key'然后两个异或

这样写很好,很活

但是这里真正问题是后16位相同就都冲突了,前面的位没参与,尽可能让更多位参与运算就可以了,位不同参与运算的结果就更分散,

此时这个值就不是只有后16位参与运算了就打破了只用2的x次方。

总结:第一种

第二种:就取2的x次方也没问题,尽可能让所有位参与运算。两个不同值运算结果更有可能不一样,哈希函数是减小冲突,概率降低了很多很多。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/28 0:38:01

【干货收藏】RAG知识库构建完整流程:面试高频考点,一篇搞定

🤔 面试官问:RAG 的知识库是怎么构建的? 今天咱们聊一个面试中高频出现、却又让很多人“翻车”的问题: “RAG 的知识库是怎么构建的?” 你是不是也曾觉得:“不就是上传文档、切块、存向量库吗?”…

作者头像 李华
网站建设 2026/4/26 12:28:57

怎么看待26届毕业生今年秋招的形势

据最新数据显示2026年高校毕业生预计高达1270万人次同比增长了48万人。年年都喊 “最难毕业季”今年更是把内卷焊死在巅峰。岗位看似变多,竞争却白热化到窒息。26应届生就业真实情况到底如何?我们来看看这届网友是怎么说的👇不少网友直呼&…

作者头像 李华
网站建设 2026/4/22 23:59:58

35+程序员转大模型必藏指南:告别年龄焦虑,从代码到AI的进阶路

在AI与大模型席卷技术圈的当下,35岁程序员的职业转型早已不必困在"年龄焦虑"的怪圈里——这个蓬勃生长的领域,正迫切等待有工程经验的开发者入局。相较于零经验小白,手握多年编程积累的你,更懂技术落地的底层逻辑&#…

作者头像 李华
网站建设 2026/4/29 1:54:32

macOS百度网盘下载加速解决方案

macOS百度网盘下载加速解决方案 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 问题根源:为何下载速度总是令人失望 许多macOS用户在使用百…

作者头像 李华
网站建设 2026/4/18 0:57:21

基于Kotaemon的项目申报政策匹配工具开发

基于Kotaemon的项目申报政策匹配工具开发 在政务数字化转型加速推进的今天,企业面对海量、分散且不断更新的政府扶持政策,常常陷入“找不到、看不懂、用不上”的困境。尤其在项目申报场景中,从国家到地方各级发布的专项资金、税收优惠、用地支…

作者头像 李华
网站建设 2026/4/16 16:45:13

百度网盘秒传链接完整攻略:快速转存生成转换全解析

在当今数字化时代,百度网盘秒传链接已成为文件分享和管理的利器。baidupan-rapidupload作为一款全平台可用的网页工具,让用户无需安装任何软件即可轻松处理秒传链接。这款工具完全免费,支持一键秒传链接、PanDL、游侠、标准码、PCS-GO等多种格…

作者头像 李华