2349. 设计数字容器系统
·
2349. 设计数字容器系统
题目链接:2349. 设计数字容器系统
代码如下:
class NumberContainers {
public:
void change(int index, int number) {
//移除旧数据
unordered_map<int,int>::iterator it =index_to_number.find(index);
if (it != index_to_number.end()) {
number_to_indices[it->second].erase(index);
}
//添加新数据
index_to_number[index] = number;
number_to_indices[number].insert(index);
}
int find(int number) {
unordered_map<int,set<int>>::iterator it = number_to_indices.find(number);
if(it!=number_to_indices.end()&&!it->second.empty()) {
return *it->second.begin();
}
return -1;
}
private:
unordered_map<int, int> index_to_number;
unordered_map<int, set<int>> number_to_indices;
};
/**
* Your NumberContainers object will be instantiated and called as such:
* NumberContainers* obj = new NumberContainers();
* obj->change(index,number);
* int param_2 = obj->find(number);
*/
更多推荐


所有评论(0)