Map 자료구조란?
Key, Value를 쌍으로 가지는 자료구조로, Key에 따른 Value가 저장되는 형태를 갖는다. 여러 개의 같은 Value는 가능하지만 여러 개의 같은 Key는 불가능하다. |
위 문제가 아마 Map 자료구조의 대표문제일 것 같다.
C++에서 사용하는 법은
선언은 위처럼 할 수 있다.
map STL을 include한 후,
map<{ key가 될 자료형 }, { value가 될 자료형 }> 이름 으로 선언한다.
map은 자동으로 pair자료형을 사용하고 있다. (key와 value가 한 쌍의 자료구조 이므로)
따라서 map에 insert함수를 사용할 때는 pair 자료형을 사용해야 한다.
- make_pair{val1, val2}
- {val1, val2}
와 같은 형태로 삽입하면 된다.
find(key_val) 메서드는 매개변수로 들어온 키 값에 해당하는 자료가 있는지 여부를 체크하는 메서드이다. 없다면 end() 반복자를 리턴한다.
insert(pair<val1, val2>) 메서드는 Map에 자료를 삽입하는 메서드이다.
at(key_val) 메서드는 매개변수로 들어온 키 값에 해당하는 자료를 리턴하는 메서드이다.
'코딩 > C++' 카테고리의 다른 글
[C++] priority_queue STL 비교 구조체 comparator 사용하기 (0) | 2021.09.01 |
---|---|
[C++] 문자열(문자)을 정수형처럼 다루는 메서드 (0) | 2021.08.17 |
[C++] Comparator 사용시 주의사항 (0) | 2021.08.17 |
[C++] 2차원 배열 0, -1로 초기화하기 memset 메서드 사용 (0) | 2021.08.06 |
<algorithm> STL에서 sort의 comparator 작성 시, invalid comparator 문제 (0) | 2021.07.30 |