完美散列

✍ dations ◷ 2025-12-11 14:53:14 #散列,散列函数,搜寻算法

对集合S的完美散列函数是一个将S的每个元素映射到一系列无冲突的整数的哈希函数。一个完美散列函数的应用与其他哈希函数的应用基本一致,但不需要任何冲突解决方案。在数学术语中,这是一个完全单射函数.

对于特定集合S的完美散列函数能在常数时间中被计算出,其映射值在一个相对小的范围内,能被一个随机化算法发现,该算法的操作次数与S的大小成正比.任何适合在哈希表中使用的完美散列函数需要至少与S的大小成正比的位数。

一个值的位数被限定范围的完美散列函数能应用于高效查找操作中:假定查找键(key)与集合S(或与集合S关联的值)对应,然后将完美散列函数应用于查找键,得到哈希值(一个整数),然后在查找表中取出该整数对应的值。在集合S极少更新且查询频率非常多的情况下,使用完美hash函数是非常有效的。对集合S更新频率的限定是由于对任何集合S的修改,都将导致该完美散列函数退化为非完美散列函数。每次集合S被修改后自动更新hash函数的解决方案被称为dynamic perfect hashing,但这类方法非常复杂,难以实现。一个简单的允许动态更新集合S的完美散列函数的替代品叫cuckoo hashing。

最小完美散列函数是一个能将个键(key)映射到个连续的整数的完美散列函数。 产生的值通常为 或 。正式表述如下:设和是有限集合K的两个元素。F是一个最小完美散列函数iff F()=F()只在=的情况下成立(单射);并且存在整数,使得F的范围为..+|K|−1。已经在数学上证明,通用的完美hash函数至少需要每个键(key)1.44 比特(bit) 。而当前已知的最小完美hash散列函数每个键需要2.6 比特。

对一个最小完美散列函数F,若键以1, 2, ..., 次序给出,对任意键 and , <,意味着F()<F(). Order-preserving minimal perfect hash functions require necessarily Ω( log ) bits to be represented.,我们称该最小完美散列函数F是保序的。

若对一个最小完美散列函数F,其应用变换后得到的值保持了键(key)的字典序,我们称该最小完美散列函数F为单调的。在此情况下,函数产生的值就是输入的键在所有可能的有序键序列中的位置。若被hash的键被存储于有序数组中,已实现一种策略,对每个键存储少量附加位(bits),以取得更快计算hash值的优势。


相关

  • 水道水道是一种大型水体的称呼,与海峡相类似。其特征为两边(或多边)各自连通的水体。江河湖泊入海口之前就常有水道。比较著名的水道有:
  • 客观坍缩理论在量子力学里,客观坍缩理论(objective collapse theory)倚靠修改含时薛定谔方程来建构一种促使波函数坍缩的机制。薛定谔方程具有决定性、可逆性与线性,而波函数坍缩是一种随机
  • 沈晓海沈晓海(1971年10月5日-),黑龙江省伊春市人,中国演员。祖母是满族人,毕业于上海戏剧学院表演系90级本科。
  • 南开大学医院南开大学医院,又称南开大学校医院,为服务南开大学师生及家属的社区医院,院长为南开大学商学院教授齐善鸿。
  • MEPE基质细胞外磷酸糖蛋白(Matrix extracellular)是在人类中由MEPE基因编码的蛋白质,属于SIBLING蛋白。该蛋白质中存在保守的RGD基序,并且这可能涉及整合素识别。
  • 丹麦 (南卡罗来纳州)丹麦(英文:Denmark),是美国南卡罗来纳州下属的一座城市。城市类型是“City”。其面积大约为3.84平方英里(9.94平方公里)。根据2010年美国人口普查,该市有人口3,538人,人口密度约为每
  • 道依茨道依茨(Deutz AG)是德国科隆的一家发动机生产商。其商标启用于1964年,M表示乌尔姆的Magirus公司(Magirus-Deutz),中间高耸的尖象征乌尔姆主教座堂。公司创建于1864年,当时名为N. A.
  • 2018年中华职棒总冠军赛2018年中华职棒总冠军赛又称2018年台湾大赛,是中华职棒29年的最后一个系列赛程,在2018年10月27日到11月3日间进行,由该年季后挑战赛获胜的统一狮对决包办该年度上下半季冠军的L
  • 康志杰康志杰(1920年-2012年5月22日),曾用名康国兰,男,直隶定县人,中华人民共和国政治人物,曾任宁夏回族自治区人民政府副主席,安徽省人民政府副省长,安徽省人大常委会副主任。
  • 卡尔·汉克卡尔·奥古斯特·汉克(德语:Karl August Hanke,1903年8月24日-1945年6月8日)是一位纳粹德国官员与最后一任党卫队全国领袖,并曾于1941年至1945年间担任下西利西亚大管区领袖(英语:Ga