代码可以运行,但每个样例要300ms左右,最后导致超时

class MyHashMap:

    def __init__(self):
        self.HashMap = [[] for _ in range(1000001)]

    def put(self, key: int, value: int) -> None:
        self.HashMap[key] = [key,value]

    def get(self, key: int) -> int:
        if self.HashMap[key]==[]:
            return -1
        else:
            return self.HashMap[key][1]

    def remove(self, key: int) -> None:
        self.HashMap[key]=[]

究其原因,是分配的时候选择了[] range函数,采用[None]*1000001后就AC了

706. Design HashMap刷题笔记_链表


第二种可以缩小哈希表的大小,如果发生哈希碰撞就用链表来解决,留着二刷的时候做