可哈希的,不可变的

可哈希的,不可变的,第1张

可哈希的,不可变的

散列是将大量数据以可重复的方式转换为少量(通常是单个整数)的过程,以便可以在表格中以固定时间(

O(1)
)查找数据,这对于高性能很重要算法和数据结构

不变性是一个想法,即对象创建后将不会以某种重要方式更改,尤其是可能会更改该对象的哈希值的任何方式。

这两个想法是相关的,因为用作哈希键的对象通常必须是不可变的,因此它们的哈希值不会改变。如果允许更改,则该对象在诸如哈希表之类的数据结构中的位置将发生变化,从而破坏了哈希效率的整个目的。

要真正理解这个想法,您应该尝试使用C / C ++之

HashMap
类的语言来实现自己的哈希表,或者阅读该类的Java实现。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5601984.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存