Design HashMap

设计一个hashmap, 注意冲突即可.

class MyHashMap {
public:
    /** Initialize your data structure here. */
    vector<pair<int, int>> map[1001];
    MyHashMap() {

    }
    
    /** value will always be non-negative. */
    void put(int key, int value) {
        int h = key % 1001;
        for(auto &i : map[h]) {
            if(i.first == key) {
                i.second = value;
                return;
            }
        }
        map[h].push_back({key, value});
    }
    
    /** Returns the value to which the specified key is mapped, or -1 if this map contains no mapping for the key */
    int get(int key) {
        int h = key % 1001;
        for(auto i : map[h]) {
            if(i.first == key) {
                return i.second;
            }
        }
        return -1;
    }
    
    /** Removes the mapping of the specified value key if this map contains a mapping for the key */
    void remove(int key) {
        int h = key % 1001;
        for(int i = 0; i < map[h].size(); i++) {
            if(map[h][i].first == key) {
                map[h].erase(map[h].begin()+i);
                return;
            }
        }
    }
};

/**
 * Your MyHashMap object will be instantiated and called as such:
 * MyHashMap* obj = new MyHashMap();
 * obj->put(key,value);
 * int param_2 = obj->get(key);
 * obj->remove(key);
 */