我正在尝试使用链接实现哈希表。 (m = 191) 但是当我测试我的代码时,表格显示为空!
table = [[] for x in range(191)]
def hash_function (k):
return k % 191
def insert (table,key):
table[hash_function(key)].append((hash_function(key),key))
with open("test.txt", "r") as file:
for seq in file:
seq_int= [ord(c) for c in seq]
int = seq_int[0] * 128 ** 3 \
+ seq_int[1] * 128 ** 2 \
+ seq_int[2] * 128 + seq_int[3]
insert(table,int)
print table
我正在从包含1000个单词(每行一个)长度为4的文本文件中读取字符串。
答案 0 :(得分:0)
这可能不是您正在寻找的内容,但您应该考虑将来使用defaultdict(例如,干净地构建字典,其中值是您正在构建的列表以及其中的位置list应该初始化为第一个key-access上的空列表。
https://docs.python.org/2/library/collections.html#collections.defaultdict