Pair
- 두 객체를 하나의 객체처럼 다룰 수 있게 해주는 구조체
선언
pair <Type1, Type2> p ( first, second);
생성
p = make_pair( first , secnod );
데이터 접근
p.first; p.second;
Map
- #include <map> 선언이 필요하다.
- pair로 된 데이터를 저장, 검색하기 위한 자료 구조이다.
- map에 있는 요소의 값은 직접 변경할 수 있으나. 키 값은 상수이며 변경할 수 없다.
구문
template <class Key,
class Type,
class Traits = less<Key>,
class Allocator=allocator<pair <const Key, Type>>>
class map;
- Key : map키 데이터
- Type : map에 저장되는 요소 데이터
- Traits : map내에서의 상대적인 순서를 결정하기 위한 정렬
- Allocator : map의 메모리 할당 및 할당 취소에 대한 정보를 저장하는 할당자 개체
생성
map <type1, type2> m1;
map <type1, type2> ::iterator m1_Iter;
typedef pair <type1, type2> m2;
삽입
m.insert(make_pair(Fisrt, Second));
m.insert({First, Second});
참조
m.at(First);
m[First];
map
-중복을 허용하지 않고, key를 기준으로 오름차순 자동 정렬된다.
multimap
-중복을 허용하고, key를 기준으로 오름차순 자동 정렬된다.
unordered_map
-중복을 허용하지 않고 정렬 없이 저장한다.
https://m.blog.naver.com/oyh951416/222001614292
'Language & Technique > 기술(technique)' 카테고리의 다른 글
DFS - 조합과 순열 (0) | 2022.08.15 |
---|---|
참조자(레퍼런스)와 포인터 (0) | 2022.03.28 |
그래프 - DFS 와 BFS (2) | 2022.03.14 |