题目
不使用任何内建的哈希表库设计一个哈希映射(HashMap)。
实现 MyHashMap
类:
MyHashMap()
用空映射初始化对象void put(int key, int value)
向 HashMap 插入一个键值对(key, value)
。int get(int key)
返回特定的key
所映射的value
;如果映射中不包含key
的映射,返回-1
。void remove(key)
如果映射中存在key
的映射,则移除key
和它所对应的value
。
示例1:
1 | 输入: |
提示:
0 <= key, value <= 10^6
- 最多调用
10^4
次put
、get
和remove
方法
解法
解法一:
申请一个1000001长度的数组,使用索引作为HashMap的key值,数组对应索引位置上则存储HashMap的value值。数组每个位置的值初始化为-1,清空之后也设置为-1,表示没有该索引为key的值。
Java
1 | class MyHashMap { |