基本思想:
和705思想同源;
具体代码:
class MyHashMap {
public:
MyHashMap() {
vec.resize(mod);
}
int hash(int num){
return num%mod;
}
void put(int key, int value) {
int index=hash(key);
for(int i=0;i<vec[index].size();i++){
if(vec[index][i].first==key){
vec[index][i].second=value;
return;
}
}
vec[index].push_back({key,value});
}
int get(int key) {
int index=hash(key);
for(int i=0;i<vec[index].size();i++){
if(vec[index][i].first==key)
return vec[index][i].second;
}
return -1;
}
void remove(int key) {
int index=hash(key);
for(int i=0;i<vec[index].size();i++){
if(vec[index][i].first==key){
vec[index].erase(vec[index].begin()+i);
return ;
}
}
return;
}
private:
int mod=769;
vector<vector<pair<int,int>>>vec;
};
/**
* 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);
*/