이것저것
Set / Map 본문
Set
- LinkedList 와 달리 데이터의 중복을 허용하지 않는다.
- 인덱스 대신 iterator를 이용해 검색
- 순서가 보장되지 않는다.
- insert, erase
- 삽입/삭제 : O(logN)
- Set은 Map의 축소형 => Key 만 있는 Map (Map도 Key는 중복 불가하기 때문에)
set<int> s;
s.insert(1);
s.insert(2);
s.insert(1);
s.insert(2);
//s안에는 1,2,1,2 가 아닌 1,2만 있다
Map
- key-value 형식으로 데이터를 저장
- 순서가 보장되지 않는다.
- Key는 중복 불가, value는 중복 가능
- 삽입/삭제/탐색 : O(logN)
- map<string, char> m; //string : key, char : value (pair 형태와 비슷)
- m["a"] = 'A'
- m.find(str) == m.end : map에 존재하지 않는다
<배열> - 인덱스를 사용
1 : "a"
3 : "b"
5 : "c"
string arr[20];
arr[1] = "a"
arr[3] = "b"
arr[5] = "c"
<Map> : key 값들이 정수가 아니므로 인덱스로 활용할 수 없다 => map을 사용해 해결
key value
"a" "A"
"b" "B"
"c" "C"
'Algorithm' 카테고리의 다른 글
삽입 정렬 (0) | 2021.01.15 |
---|---|
선택 정렬 (0) | 2021.01.15 |
Priority Queue (우선순위큐) (0) | 2021.01.08 |
소수 (에라토스테네스의 체) (0) | 2021.01.07 |
유클리드 호제법 (0) | 2021.01.07 |
Comments