线性探测法下的哈希查找法
space=10
index=[None]*10
data_list=[15,10,9,8,16,18,3]
for i in range(10):
index[i]=-1
print(index)
def create_table(num,index):
temp=num%space
while True:
if index[temp]==-1:
index[temp]=num
break
else:
temp=(temp+1)%space
for i in data_list:
create_table(i,index)
print(index)
其中之前出现了一个错误
错误代码是:
index=[]
for i in range(10):
index[i]=-1
分析:
index是一个空列表,没有一个元素
空数组不能直接指定位置
解决方法1
index.append(1)
解决方法2
先生成一个定长的list:
m1=[0]*len(data)
m1[1]=1