自己最近在搞数据结构对于字符串这种神奇的东西,应该有一种身操作来处理它,这里我推荐哈希算法.
首先说这里不全是原创,我会借鉴很多其他高手博客里整理好的东西。给自己学习。
hash算法的意义在于提供了一种快速存取数据的方法,它用一种算法建立键值与真实值之间的对应关系,(每一个真实值只能有一个键值,但是一个键值可以对应多个真实值),这样可以快速在数组等条件中里面存取数据.
//HashTable.h
template class HashTable{
本文介绍了哈希算法的基本原理和作用,通过猪圈的比喻解释了哈希算法如何通过键值对应关系实现快速数据存取。讨论了建造合适数量的猪圈(即选择合适的哈希函数)的重要性,以及在时间和空间成本之间的权衡。文章还列举了多种常见的哈希函数,如RSHash、JSHash等,并提供了简单的C++实现,特别指出BKDRHash在ACM中因其易用性和高效性而被广泛采用。
自己最近在搞数据结构对于字符串这种神奇的东西,应该有一种身操作来处理它,这里我推荐哈希算法.
首先说这里不全是原创,我会借鉴很多其他高手博客里整理好的东西。给自己学习。
336

被折叠的 条评论
为什么被折叠?