티스토리 뷰
leetcode.com/problems/design-hashmap/submissions/
Hash table관련 라이브러리 없이 작동하는 객체를 만들라고한다.
class MyHashMap {
private:
public:
vector<pair<int, int>> map;
MyHashMap() {}
~MyHashMap() { map.clear(); }
void put(int key, int value) {
if (get(key) == -1) map.push_back(pair<int, int>(key, value));
else {
remove(key);
map.push_back(pair<int, int>(key, value));
}
}
int get(int key) {
for (int i = 0; i < map.size(); i++) {
if(map[i].first == key) return map[i].second;
}
return -1;
}
void remove(int key) {
for (int i = 0; i < map.size(); i++) {
if (map[i].first == key) map.erase(map.begin() + i);
}
}
};
put은 hashmap에 Data를 insert하도록 동작(이미 같은값의 key가 존재할 경우 value를 갱신)
get은 key값에 대한 value를 return하도록 하고, key가 없을경우 -1을 return
remove는 일치하면 key값이 있으면 객체 내에서 제거하면 된다.
'알고리즘 문제 풀이' 카테고리의 다른 글
[알고리즘문제] 백준 베스트셀러(1302번) (0) | 2021.04.13 |
---|---|
[알고리즘문제] 프로그래머스 위장 (0) | 2021.04.08 |
[알고리즘문제] 릿코드 Design Hash Set (0) | 2021.04.08 |
[알고리즘문제] 릿코드 Find Common Characters (0) | 2021.04.07 |
[알고리즘문제] 릿코드 Subdomain Visit Count (0) | 2021.04.06 |