a Hashmap is a Map data structure. Like a list each item that is stored in a hashmap is stored at a particular index. This index is called a hash and it is generated using a hash function.
Hash functions accept the object to be stored as an argument and generate a number that is unique to it. different hashing functions have different trade-offs. a function that is too sparse will use up more space than required. while one that is not sparse enough will suffer from collisions where objects use the same hash.