배열의 인덱스로 String이나 큰 수를 넣고 싶은데 불가능하다면,
#include<map>
map은 STL(Standard Template Library)이 제공하는 자료구조 중 하나.
map의 배개변수
Key - map에 저장되는 키 데이터 형식
Type - map에 저장되는 요소 데이터 형식
Traits - 함수 개체를 제공하는 형식은 map 내에서의 상대적인 순서를 결정하는 정렬 키로 두 요소 값을 비교 가능
Allocator - map의 메모리 할당 및 할당 취소에 대한 세부 정보를 캡슐화하는 저장된 할당자 개체를 나타냄
map 클래스 특징
- 연결된 키 값을 기반으로 요소 값을 효율적으로 검색하는 다양한 크기의 컨테이너.
- 이는 해당 요소에 엑세스할 수 있는 양방향 반복기를 제공하기 떄문에 되돌릴 수 있다.
- 요소가 지정된 비교 함수에 따른 키 값으로 정렬됨
- 키는 고유하다 (중복된 키 사용 불가)
- 요소의 데이터 값은 키 값과 구별되기 때문에 쌍 연관 컨테이너
(출저 : https://blog.naver.com/afsdzvcx123/221395547971)
선언 map<int,int>d; map<string,int>d; map<char,int>d;
첫번째 int가 key, 두번째 int가 value다.
map의 중요한 기능 count
map.count("1") : 맵에 1이란 스트링이 한번이라도 들어갔으면 1을 출력 아니면 0.
(그래프 문제에서 사용되는 부울 함수처럼 작용)
'이론이론이론이론 > 알고리즘' 카테고리의 다른 글
Knapsack 알고리즘 (배낭싸기 알고리즘 ) (0) | 2019.02.13 |
---|---|
투 포인터스 알고리즘 (Two Pointers Algorithm) (0) | 2019.01.29 |
우선순위 큐 활용법 (0) | 2019.01.13 |
플로이드 워셜 알고리즘 (0) | 2018.12.30 |