散列表查找失败平均查找长度_散列表(哈希表)——数据结构

本文介绍了散列表的基本概念,包括散列函数的构造方法,如数字分析法、平方取中法、折叠法和除留余数法,并详细探讨了处理冲突的开放寻址法和链地址法。同时,分析了散列表的平均查找长度与填装因子、冲突解决策略的关系。
摘要由CSDN通过智能技术生成

一,散列表的基本概念

直接将元素的储存位置和其关键字之间建立某种直接关系,那么在进行查找时,就无需做比较或做很少次的比较,按照这种关系直接由关键字找到相应的记录,这就是散列表查找法的思想。

它通过对元素关键字值进行某种运算,直接求出元素的地址,即使用关键字到地址的直接转换方法,而不需要反复比较。因此散列查找法又称为杂凑法散列法

散列表中的术语:

  • 散列函数和散列地址:在记录的存储位置p和其关键字key之间建立一个确定的对应关系H,使得p=H(key),称这个对应关系H为散列函数,p为散列地址
  • 散列表:一个有限连续的地址空间,用以存储按散列函数计算得到相应散列地址的数据记录。通常散列表的存储空间是一个一维数组,散列地址是数组的下标。
  • 冲突和同义词:对不同的关键字可能得到同一散列地址,即key1 != key2,但是H(key1) == H(key2),这种现象称为冲突。具有相同函数值的关键字对该散列表函数来说称为同义词,key1与key2互称为同义词。
  • eg:A称为关键字key,则A经过关系H后,在数组中的位置称为存储位置p;而不同的关键字8,4,经过关系(关键字%2)得到的存储地址都是0,称为冲突,而8,4则为同义词
  • 二,散列函数的构造方法

要求:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值