C++/C++
[C++] multiset
sihyeong
2022. 11. 24. 22:59
헤더파일 : <set>
장점 | 단점 |
많은 데이터를 저장한다. 검색 속도가 빠르다. 중복을 포함해 자동 정렬된다. Key == Value |
적은 양의 자료를 사용할 경우 오버헤드로 인한 손해 발생 |
- 기본 : 오름차순
- multiset<T, greater<T>>로 내림차순으로 생성, 사용 가능
주의점
- 다른 자료구조와는 다르게 iterator에서 + 연산자를 지원하지 않는다.
multimap<int> m;
for(int i = 0; i < 10; i ++)
{
m.insert(i);
}
auto iter = m.begin() + 1; // X 사용불가능 컴파일오류
iter = ++m.begin(); // O 사용가능
- ++, -- 연산자는 정상 작동하기 때문에 m.begin() + 2의 위치를 참조하기 위해선 auto iter = ++m.begin(); iter++;을 해야 원하는 위치 참조 가능