c - 非常简单的哈希表查询

标签 c data-structures hashtable

如果哈希表的索引是通过使用 hash() 函数 % TABLE_SIZE 返回的某个整数值来计算的,这是否意味着唯一可能的索引值是 0-9,因为模运算符的返回值范围是 [0, 9]?我知道这非常简单,但它阻碍了我进一步理解哈希表概念。

最佳答案

不,您对 % ( modulo ) 的理解不正确。具体来说,您似乎忽略了右侧参数的原因,并假设它始终是一个常量10,这完全是错误的。

表达式x % y 将返回 0 到 (y - 1) 范围内的值,包括 0 和 (y - 1)(假设两者都是无符号的)。

关于c - 非常简单的哈希表查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30166015/

相关文章:

java - 为什么具有链表的哈希表被认为具有恒定的时间复杂度?

c - 从静态库 (.lib) 的 c 函数返回字符串 (char *)

algorithm - 寻找合并排序列表的算法

python - 根据项目条件在两个列表上查找索引

java - 我将如何着手制作高效的键值存储(例如内存缓存)/简单数据库?

javascript - 在 JavaScript 中从哈希表中获取信息

powershell hashtable.containsValue 返回false,但循环值得到匹配?

c - 释放 C 中的结构元素

c - GCC的函数指针,分配地址

c - 将整个文件读入堆上分配的该区域