핵심 요약
- pair <key, value>를 원소로 저장
- key를 기준으로 데이터를 정렬
- key는 유일하다.
- 찾고자 하는 원소를 빨리 찾기 위해 사용 - O(logN)
중복된 key값을 사용하고 싶다면 multimap을 사용하자!
사용 방법
#include <map>
원소 삽입
- pair <key, value> 임시 객체 생성을 통한 삽입
- pair <key, value>를 만들어주는 make_pair 함수 사용
- make_pair로 pair <key, value>를 만들어 이를 직접 삽입
- emplace 내부에서 pair <key, value>를 직접 생성하여 삽입
- insert_or_assign을 통해 key가 없는 경우에만 삽입
원소 삭제
1. erase(key)함수를 통해 제거
value 값 참조
- '[ ]' 연산자를 통해 value값 참조가 가능하다.
map <int, string> testMap;
map <string, int> testStringMap;
testMap[1] // string 값
testStringMap[”asd”] // int 값
반복문 데이터 접근(first, second)
- 인덱스 기반 반복문 활용 예제(iterator 사용)
//인덱스 기반
for (auto iter = m.begin() ; iter != m.end(); iter++){
cout << iter->first << " " << iter->second << "\n";
}
cout << "\n";
- 범위 기반 반복문 활용 예제(for each문 사용)
//범위 기반
for (auto iter : m) {
cout << iter.first << " " << iter.second << "\n";
}
cout<<"\n";
'Language > C++' 카테고리의 다른 글
[C++] 우선순위 큐(PRIORITY_QUEUE) & 페어(PAIR) 사용법 (0) | 2024.09.15 |
---|---|
[C++] memset 함수(메모리 초기화) (0) | 2024.08.26 |
[C++] int를 string으로 변환하는 방법 (1) | 2023.11.26 |
[C++] 수학 함수 (0) | 2023.10.08 |