完美散列

✍ dations ◷ 2025-12-05 18:56:31 #散列,散列函数,搜寻算法

对集合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值的优势。


相关

  • 舌(舌头)是口腔底的肌肉,帮助咀嚼、吞咽、构音和感受味觉。舌能辨别酸、甜、苦、辣、咸、鲜味,舌表面的大部分粘膜上皮中含味蕾。因为舌是帮助发声的器官之一,在一些语言中,比如在
  • 阿拉伯文字阿拉伯文字是一种用于书写阿拉伯语、曼丁哥语方言、中库尔德语、卢尔语、波斯语、乌尔都语、普什图语及其他亚非语言的书写系统。在16世纪还被用于书写西班牙语。阿拉伯文字
  • 福氏耐格里变形虫福氏耐格里虫(学名:Naegleria fowleri)是异叶足纲(Heterolobosea)的内格里虫,俗称食脑菌、食脑变形虫(brain-eating amoeba)、福氏阿米巴虫。在其生物生命周期有三种型态:囊胞、类阿
  • The Diplomat《外交学者》(The Diplomat)杂志是一英文政治刊物,采用网络发行,主要报道亚太地区的政治社会等方面的新闻资讯,主要由中国力量(China Power)、印度十年(Indian Decade)、海军外交(The
  • 1-十八烯1-十八烯是一种长链的烯烃,化学式为C18H36。十八烯有很多同分异构体,这些异构体双键的位置不同。1-十八烯是众多异构体之一,属于α-烯烃(英语:alpha-olefin),它是价格较为便宜的溶
  • 欲望城市2《欲望城市2》(英语:)是一部于2010年5月上映的一部美国两性浪漫喜剧片。该片是欲望城市电影版的续集,其内容改编和延伸自HBO的热门电视剧集《欲望城市》。此片在2010年5月27日于
  • 陆光熙(弟)陆敬熙(女)陆士嘉陆光熙(1878年-1911年),本名惠熙,字亮臣,顺天府宛平县人,本籍浙江省萧山县。清末翰林、官员。陆光熙之父陆钟琦为光绪十五年(1889年)进士,官至山西巡抚。陆光熙于光绪
  • 灶糖灶糖,又名关东糖、糖瓜,是中国北方一带冬天的时令小吃,主要成分是麦芽糖。一般长条形的糖棍称为“关东糖”,扁圆棋子形状的称为“糖瓜”,这两种有时外面沾上芝麻。麦芽糖在冷冻后
  • 左营丰谷宫左营丰谷宫,位于台湾高雄市左营区左营大路495号,主祀神农大帝。是左营地区居民相当重要的信仰中心之一,香火鼎盛。某一次城隍爷绕境到左营东门旧巷的时候,有一名信徒交付一尊清
  • 胡璇泽胡璇泽(Hoo Ah Kay Whampoa) (1816年-1880年3月27日),号琼轩,别号南生,亦名玉玑,原名阿基,字逾泽。原籍番禺茭塘司黄埔,现广州市海珠区新滘镇黄埔村,曾身兼多国领事之职,清廷于1878年任命