Java/706. Design HashMap 设计哈希映射
题目
代码部分一(138ms 79.22%)
class MyHashMap {
private final int BLOCK = 1000005;
int[] nums;
boolean[] map;
/** Initialize your data structure here. */
public MyHashMap() {
map = new boolean[BLOCK];
nums = new int[BLOCK];
}
/** value will always be positive. */
public void put(int key, int value) {
map[key] = true;
nums[key] = value;
}
/** Returns the value to which the specified key is mapped, or -1 if this map contains no mapping for the key */
public int get(int key) {
if(map[key]) return nums[key];
return -1;
}
/** Removes the mapping of the specified value key if this map contains a mapping for the key */
public void remove(int key) {
map[key] = false;
}
}
代码部分二(127ms 87.66%)
class MyHashMap {
int[] map;
/** Initialize your data structure here. */
public MyHashMap() {
map = new int[1000000];
}
/** value will always be positive. */
public void put(int key, int value) {
map[key] = value + 1;
}
/** Returns the value to which the specified key is mapped, or -1 if this map contains no mapping for the key */
public int get(int key) {
return map[key] - 1;
}
/** Removes the mapping of the specified value key if this map contains a mapping for the key */
public void remove(int key) {
map[key] = 0;
}
}