搜索结构之【哈希】

查找分类

在很多的时候,我们需要从元素的集合中查找出给定的关键字是否存在的过程,这个过程通常有两种结果:查找成功,查找失败。
用于搜索数据的集合,称之为搜索结构,一般是由统一类型的元素的集合。
而查找的环境分为静态环境和动态环境。
静态环境:在插入或者删除等操作前后搜索结构不会发生改变,向顺序表,链表。
动态环境:为了保证较高的搜索效率,在插入或者删除的前后搜索结构会自动进行调整,结构可能会发生改变,向搜索二叉树,AVL树,B_树,B+树这样的一些结构。
静态查找:只是查找给定关键字是否存在元素集合中。
动态查找:不光包含静态查找要求,还会插入一些元素集合中没有的元素或者删除一些没有的元素。


哈希

在顺序表,二叉搜索树,B树等搜索结构中进行查找的时候,元素的关键码和元素的存储位置并没有什么直接关系,查找的效率取决于元素的比较次数。
而理想的搜索结构是不经过任何的比较,直接从搜索结构中找到想要的元素。因此,我们构造出了这样的一种搜索结构,使元素的关键码和它的存储地址建立起来一个一一对应的关系address=Hash(key)。这就是哈希查找,这个函数就称之为哈希函数,这种结构我们称之为哈希表。
在插入元素的时候,我们对元素的key进行函数元素,计算出它的存储位置。
同样的,在查找元素的时候,我们对给定元素的key进行同样的运算,计算出它的hash地址

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值