algorithm - 使用线性探测搜索条目的算法是什么?
问题描述
请有人通过告诉我使用线性探测搜索条目的通用算法来提供帮助。
我有以下内容,但我认为它是伪代码而不是算法:1)使用哈希函数查找项目应该在哪里的索引。2)如果不存在,则搜索该哈希位置之后的记录,直到找到它,或者直到找到一个空记录。3)如果在找到记录之前表中有空位,则表示该记录不存在。
解决方案
为了搜索给定的键 x,检查 T 的单元格,从索引 h(x) 处的单元格开始(其中 h 是哈希函数)并继续到相邻的单元格 h(x) + 1, h(x) + 2, ...,直到找到一个空单元格或存储键为 x 的单元格。如果找到包含该键的单元格,则搜索将返回该单元格中的值。否则,如果找到一个空单元格,则该键不能在表中,因为它会优先放置在该单元格中,而不是任何尚未搜索的后续单元格。在这种情况下,搜索返回的结果是该键不存在于字典中
推荐阅读
- gcc - 通过 LD_PRELOAD 替换 memcpy@glibc_2.14
- typescript - Angular - 如何在没有 fs 的情况下检查文件是否存在
- c - 递归函数C乘以4问题
- mysql - 获取上周每一天的记录数。如果在特定日期没有找到记录,那么我想要 0 作为记录
- sql-server - SQL 2014 窗口 10
- sql - 即使在 SQL 中遵循 Microsoft 格式后也会出错
- workflow - 在活动中可以进行自我转换
- javascript - 地图循环reactjs中的鼠标悬停
- python - 样本数量不一致的 Python Sklearn 变量
- join - Dataprep 中的自定义联接