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

Dictionary的底层原理

Dictionary的底层原理图:

存储结构:数组加单链

运用了buckets,entries两个数组

为了提高查询效率:int[] buckets桶数组,存放的每一个链表的头节点的下标

详细步骤:

dict.Add("k1","v1"),通过k1获取HashCode值

然后除以buckets桶的个数获取在桶中存储的位置:k1=1304016835,k1%bucket.lenth(5)=0,将k1存储在桶为0的位置

如果该位置下entries下标为-1(代表还没存储数据),就往空的位置加入,然后使next指向-1

该数据下标为0

如果不为-1,则往末尾加,加好后,使next值指向前一个元素的下标,再将自己的下标赋值给桶在该位置的数

使用的时候就是先拿到桶的位置,然后遍历链表,而不是遍历整个数组

时间复杂度从O(n)—>O(1)

注意事项:

原链表最多存储100个数据

超出的话,则给桶扩容至下一个质数:5->7->11...

http://www.gsyq.cn/news/1439707.html

相关文章:

  • 极限运动场施工为什么不能只看效果图? - 长华体育
  • 2026年5月邯郸靠谱黄金回收门店实测盘点:余生黄金回收984元/克领跑,全城6家口碑排行 - 余生黄金回收
  • 基于机器学习的智能电表用电异常检测与负荷预测系统实战
  • 吕梁 cppm 培训机构中供国培首选 - 中供国培
  • 2026.5.30 zsh题单
  • 智慧树学习助手:用自动化技术提升在线学习效率
  • 闲管家邀请码折扣码是什么 闲管家智能回复 - 李先生sir
  • Voclosporin伏环孢素作为钙调神经磷酸酶抑制剂治疗活动性狼疮肾炎的蛋白尿降低
  • 余生黄金回收综合实力登顶!2026年5月兰州黄金回收深度解析与服务阶梯指南 - 余生黄金回收
  • 从BibTeX到完美排版:我的Mendeley/Zotero自定义CSL格式踩坑全记录
  • EP0 Oh my zsh 快速安装
  • 2026年4月空心轴生产厂家有哪些,调质轴/镀铬光轴/直线光轴/空心轴/软轴/实心光轴/空心光轴,空心轴批发厂家推荐 - 品牌推荐师
  • 丽水足不出户黄金回收,六家机构上门服务避坑指南 - 上门黄金回收
  • 呼和浩特 cppm 培训机构中供国培首选 - 中供国培
  • 小白配置Vscode Claude Code 插件免费使用deepseek-v4-pro模型
  • 护发精油品牌对比:4个国货品牌VS进口品牌 - 资讯快报
  • AI Agent时代来临:智能体正在重塑互联网的下一阶段
  • 一次thinkbook蓝牙修复过程
  • AMD Ryzen + VMware装macOS避坑大全:从镜像下载失败到VMware Tools安装报错的完整解决方案
  • 用STC89C51单片机+HC-SR04超声波模块,手把手教你做一个防误触的智能垃圾桶(附完整代码)
  • LLM 推理框架大战 2026:谁才是真正的性能王者?
  • 别死磕 `brctl` 了!一文讲透 Linux 网桥的“前世今生”与避坑指南(本文ai作为编辑)
  • 2026年|论文求生:AIGC检测走红,全网最全国内外10大免费降AI率工具避坑指南 - 降AI实验室
  • 【SRC漏洞挖掘系列】第15期:自动化与AI赋能 —— 打造你的专属“漏洞挖掘机”
  • 【C++基础】循环结构
  • 磁盘管理2
  • 小程序支付开发避坑指南,Java 后端实现中的签名与回调难点
  • CC-Switch 全平台部署使用官方教程【2026-05-31】
  • [开发说明书] 北斗定位ATGM336H-5N模块 STM32F103程序代码 正点原子Wifi模块小ESP8266 位置经纬度 高度传感器 上传到Onenet云平台数据显示
  • 2026年5月江门黄金回收专业科普:【余生黄金回收】全域综合实力排名第一 - 余生黄金回收