Map은 자동으로 정렬되며, 중복을 허용하지 않는 자료구조이다.
1. Map 선언
#include <map>
map<int,string> m;
2. Map 삽입
//1번 방법
m.insert(pair<int,string>(9,"hello"));
//2번 방법
m.insert({9,"hello"});
//대입하는 방법
m[9]="hello";
3. Key값을 이용해 Value값 찾기
//map의 key값으로 접근
cout<<m[key];
//key에 값이 있는지 확인
if(m.count(1)==0){ //m[1]의 값이 있는지 확인 , 만약 없으면 0
m.insert({1,s}); //없을 경우 1번 key 에 value 삽입
}
//m.count(key) 해당 key값에 있는 변수 갯수를 반환 (있다면 무조건 1 반환)
//value값을 이용해서 key값을 찾을 때, 다른 map을 선언하여 <value, key> 순으로 insert한다음 map2[value]를 이용
4. Map 삭제
//전체삭제
m.clear();
//요소삭제
m.erase(3);
5. Map 의 요소순회
for(auto it=m.begin(); it!=m.end(); it++){
if(it->second<min){
min=it->second;
ans=it->first;
}
}