誰でも私のハッシュテーブルに値を挿入するput関数を修正する手助けはできますか? 現在、私はNoneの で完全なハッシュテーブルの出力を得ています。 [なし、なし、なし、なし、なし]ハッシュ - ハッシュテーブルに値を挿入する
class BasicHashTable:
def __init__(self,size=7):
self.size = size
self.slots = [None] * self.size
def hash_function(self, key):
return key%len(self.slots)
def rehash(self, old_pos):
return (old_pos + 1) % self.size
def put(self, key):
hash_value = key%len(self.slots)
probe_seq=[]
insert_pos=hash_value
probe_seq+=[insert_pos]
probes=1
while(self.slots[insert_pos]!=None):
probes+=1
insert_pos=(insert_pos+1)%len(self.slots)
probe_seq+=[insert_pos]
self.slots[insert_pos]=key
return insert_pos
テスト:
hash_t = BasicHashTable()
hash_t.put(3)
hash_t.put(20)
hash_t.put(10)
print(hash_t.slots)
は、それがない[なし、なし、なし、3、10、なし、20]
は、あなたのテストコードを置くことができますか? – HuStmpHrrr
あなたに[None、None、None、None]または[None、None、None、3,10、None、20]を教えてもらえますか?あなたの心を作りなさい。 –
@stefan私はそれが現在の出力値ではなく、テストケースだと思います。 –