hash 자료구조
✅ 헤더파일: #include <unordered_map>
✅ 장점: 특정 string
을 통해 값을 구할 때 key(string) - value(int)
로 빠르게 찾을 수 있다.
map
보다 더 빠른 탐색을 하기 위한 자료구조map
은 Binary Search Tree
로 탐색하며 시간복잡도는 O(log n)
이지만 unordered_map
은 해쉬테이블로 구현한 자료구조로 탐색하며 시간복잡도는 O(1)
map
에 비해 데이터가 많을 때 월등히 좋은 성능을 보입니다.key
가 유사한 데이터가 많을 시 해시 충돌로 인해 성능 저하empty( )
size( )
operator [ ]
: 맵에서 key
를 통해 value
를 지정하는 operator
ex) map_name[key] = value
find( key )
: map
에서 key
에 해당하는 원소를 찾는 함수
return
값: 탐색 결과가 있을 경우 iterator
, 없을 경우 map_name.end()
count( key )
: map
에서 key
에 해당하는 원소의 갯수를 반환하는 함수 - 0과 1로 존재 유무만 판단 가능
insert( {key, value} )
: map
에 pair<key,value>
를 추가하는 함수
erase( key )
: map
에서 key
에 해당하는 원소를 제거하는 함수
erase
방법: 특정 position
의 pair
삭제, key
를 통해 삭제, 범위 삭제
clear( )
: 맵을 초기화하는 함수
operator =
대입연산자 가능