I am getting this error
Traceback (most recent call last):
File “script.py”, line 7, in
class HashMap:
File “script.py”, line 37, in HashMap
blossom = HashMap(len(flower_definitions))
NameError: name ‘HashMap’ is not defined
code:
from linked_list import Node, LinkedList
from blossom_lib import flower_definitions
class HashMap:
def init(self,size):
self.array_size = size
self.array = [LinkedList() for i in range(size)]
def hash(self,key):
return sum(key.encode())
def compress(self,hash_code):
return hash_code % self.array_size
def assign(self,key,value):
array_index = compress(self.hash(key))
#self.array[array_index] = [key,value]
payload = Node([key, value])
list_at_array = self.array[array_index]
for index in list_at_array:
if key == index[0]:
index[1] = value
return
list_at_array.insert(payload)
def retrieve(self,key):
array_index = compress(self.hash(key))
list_at_index = self.array[array_index]
#if payload != None and payload[0] == key:
#return payload[1]
else
#return None
if key == index[0]:
return index[1]
else:
return None
blossom = HashMap(len(flower_definitions))
for flower in flower_definitions:
blossom.assign(flower[0], flower[1])
blossom.retrieve(‘daisy’)