搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
凡人多烦事01
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
江协科技/江科大-STM32入门教程-2.基于标准库(库函数)新建工程_这些中断达到触发条件后就会自动执行
2
mac读不到内置硬盘为什么 ntfs读取不了硬盘_mac找不到内置硬盘原因
3
网络--QOS_企业上网 ftp 对qos
4
数据结构之LinkedList与链表_perl中的数组底层是链表吗
5
Linux:进程控制(二.详细讲解进程程序替换)
6
本地仓库如何与远程仓库进行关联_本地关联远程仓库
7
数据结构--拓扑排序_一种数据结构给出拓扑排序的方式
8
架构的演进之路与前沿技术_架构到技术
9
Transformer的Encoder和Decoder之间的交互
10
【设计模式】Java 设计模式之观察者模式(Observer)_oberver设计模式
当前位置:
article
> 正文
散列表的基本_散列表的伪随机数法
作者:凡人多烦事01 | 2024-06-08 06:53:10
赞
踩
散列表的伪随机数法
定义:
散列查找法:关键字与其存储位置之间建立某种直接关系,在查找时按照这种关系便可快速找到对应关键字的查找
散列函数:散列查找法中使用的转换函数
冲突:不同的关键字对应到同一个散列地址【key1≠key2,H(key1)=H(key2)】【不可避免】
同义词:对应到统一散列地址的不同关键字之间的互称
装填因子α:表中填入的记录数/哈希表长度
构造关键:
散列函数尽可能简单以提高转换速度,散列地址尽可能均匀分布以节省空间
制定一个好的解决冲突的方案
构造方法
直接定址法 —— Hash(key)=akey+b(a、b为常数)
优点——以关键码key的某个线性函数值为散列地址,不会产生冲突
缺点——要占用连续地址空间,空间效率低
除留余数法 —— Hash(key)=key mod p(p是一个整数≤表长)
解决冲突
开放定址法
基本思想:有冲突时就去寻找下一个空的散列地址,只要散列表足够大,空的散列地址总能找到,并将数据元素存入
常用方法:线性探测法、二次探测法、伪随机探测法
线性探测法 —— Hi = (Hash(key)+di) mod m (1 ≤ i<m)
m是散列表长度,d是增量序列1,2,.......,m-1,且di=i
成功时ASL=(Σ(1+冲突移动次数))/元素个数
失败时ASL=(Σ(到空的地址的比较次数))/地址个数
二次探测法 —— Hi = (Hash(key)+di) mod m
m是散列表长度,d是增量序列1²,-1²,2²,-2²,.......,q²
伪随机数探测法 —— Hi = (Hash(key)+di) mod m
m是散列表长度,d是伪随机数
链地址法
基本思想:相同散列地址的记录链成一个单链表【m个散列地址就设m个单链表,然后用一个数组将m个单链表的表头指针存储起来】
建立散列表步骤:
取数据元素的关键字key,计算散列地址。若该地址对应链表为NULL,则将该元素插入此链表;否则进行步骤2
根据选择的冲突处理方法,计算关键字key的下一个存储地址,若该地址对应链表不为空,则利用前插(后插)法将该元素插入此链表
优点:非同义词不会冲突,无“聚集”现象;结点空点动态申请
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/凡人多烦事01/article/detail/688834
推荐阅读
article
LangChain
入门教程
-
使用
代理
Agent
_
qianfanchatendpoint
实现多工...
对于大模型,比如某些场景,需要数学计算,或者需要从某些网站获取参考资料,就必须
使用
专门的代理来完成任务。这里我们
使用
la...
赞
踩
article
消息
中间件
——
RabbitMQ
,2024年最新
java
实战
项目
大全
pdf
_
中间件
项目
实战
...
System.err.println(“默认方法, 消息内容:” + new String(messageBody));...
赞
踩
article
小
程序
--初始阶段--
配置
服务器
域名
_
小
程序
服务器
域名
指向
个人电脑
...
小
程序
前期准备
服务器
域名
已有ICP备案并且有https证书(如果暂时没有的话,可以在
小
程序
开发工具的本地设置中勾选不校验...
赞
踩
article
java
中
double
类型转换
成字符串自动
格式化
成科学
计数法
...
在使用
double
类型的时候,常常使用String.valueOf(Double d)方法来将
double
转换成Stri...
赞
踩
article
vscode
报错:检测到 #
include
错误。请更新
include
Pat
h
。无法
打开
源
文件
...
这时
打开
wsl 连接的
vscode
,ctrl + s
h
ift + p,点击第一个C/C++:编辑配置(JSON),在...
赞
踩
article
错误 error: The
following
untracked
working
tree
fil...
问题类型相信很多小伙伴在创建新的git仓库后,会选上添加
README
.md文件,开始我也没太在意,应该也没有什么问题。但...
赞
踩
article
Navicat8
for
MySQL
数据库
脚本
导出中文乱码问题_
navicat
导出
数据库
脚本
时如何...
mysql> show variables like '%char%';+-----------------------...
赞
踩
article
记
一次
RabbitMQ
未
配置
Listener
导致的报错...
推测原因是未设置acknowledge-mode: manual手动确认消息,而在代码中手动确认了消息。增加
配置
后问题得...
赞
踩
article
Android
Studio
导入项目需要做的一些配置_
长颈鹿
版本
的
androidstudio
导入小松...
打包完成,就可以安装到安卓手机了。选择本地安装的SDK、NDK目录。可选debug和release。_
长颈鹿
版本
的and...
赞
踩
article
已
解决
rabbitmq
AMQPConnectionClosedException
:管道破裂或
连接
关...
已
解决
rabbitmq
AMQPConnectionClosedException
:管道破裂或
连接
关闭
异常
的正确
解决
方法...
赞
踩
article
算法
与
数据结构
-
堆
的
基本
操作
C语言
实现
_
堆
及其
操作
c
语言...
数据结构
,二叉
堆
,创建/插入/删除,大顶
堆
/小顶
堆
,
堆
调整
算法
_
堆
及其
操作
c
语言
堆
及其
操作
c
语言 ...
赞
踩
article
mysql
double
转
string
类型转换
_
java
中
double
类型转换
成字符串自动格式化成...
/*** Returns the
string
representation of the
double
argumen...
赞
踩
article
重磅福利!
免费
部署ChatGPT4.0
AI
大模型无限
次数
对话
(
支持
手机PC)_
chatgpt
免费
版(...
1.
支持
无限
次数
对话
该项目提供了无限
次数
对话
的功能,用户可以在不受
次数
限制的情况下与ChatGPT-4进行交流。这消除了...
赞
踩
article
大
语言
模型
应用
指南:
文本
的向
量化
...
1. 背景介绍近年来,人工智能领域的发展速度越来越快,其中以大
语言
模型
(Large Language Model, LL...
赞
踩
article
git
error:the
following
untracked
working
tree
fil...
git
error解决:the
following
untracked
working
tree
files would...
赞
踩
article
使用
langchain
与你自己的
数据
对话(四):问答(
question
answering
)_max...
今天我们介绍了如何通过答链RetrievalQA,来检索向量
数据
库并回答用户的问题。其中我们介绍了几种Retrieval...
赞
踩
article
【数据库】HIVE SQL几种
排序
函数
(ROW_
NUMBER
&
RANK
&
DENSE
_
RANK
)_hi...
最初用
排序
函数
时,只会用row_number,后来在网上一看,才知道由于场景不同,是有不同的
函数
的。作为一个总结,为以后...
赞
踩
article
哈希
表
结构
及
碰撞
处理_
哈希
表
碰撞
...
哈希
碰撞
的解决方案_
哈希
表
碰撞
哈希
表
碰撞
为了为更好的阅读体验,...
赞
踩
article
CSS
动态
滑动
按钮
效果
_
css
写
动态
按钮
效果
...
【代码】CSS
动态
滑动
按钮
效果
。_
css
写
动态
按钮
效果
css
写
动态
按钮
效果
<te...
赞
踩
article
系统
架构
设计师考试题库笔记重点
10
:
应用
数学
_软考
架构
师(
17
)——
应用
数学
...
统筹学步骤确定目标 制定方案 建立模型 制订解法关键路径法CPM关键路径:在网络活动图AOE中,顶点到结束点最长的路径。...
赞
踩
相关标签
langchain
python
人工智能
java
java-rabbitmq
rabbitmq
小程序
string
vscode
ubuntu
git
服务器
分布式
android studio
android
ide
后端
RabbitMQ
Exception
Error
mysql double 转string类型转换
AI编程
AI写作
开源