Insert Delete GetRandom O(1) LeetCode solution in C++
1class RandomizedSet {2public:3unordered_map<int, int> mp;4vector<int> v;5RandomizedSet() {}67bool insert(int val) {8if (mp.find(val) != mp.end()) return false;9mp[val] = v.size();10v.push_back(val);11return true;12}1314bool remove(int val) {15if (mp.find(val) != mp.end()) {16v[mp[val]] = v.back();17mp[v.back()] = mp[val];18v.pop_back();19mp.erase(val);20return true;21}22return false;23}2425int getRandom() {26return v[rand() % v.size()];27}28};