[C++] unordered_map

다곰·2022년 10월 21일
0

hash 자료구조

✅ 헤더파일: #include <unordered_map>

✅ 장점: 특정 string 을 통해 값을 구할 때 key(string) - value(int) 로 빠르게 찾을 수 있다.

  • map 보다 더 빠른 탐색을 하기 위한 자료구조
  • mapBinary Search Tree 로 탐색하며 시간복잡도는 O(log n) 이지만 unordered_map 은 해쉬테이블로 구현한 자료구조로 탐색하며 시간복잡도는 O(1)
  • 중복된 데이터를 허용하지 않고 map 에 비해 데이터가 많을 때 월등히 좋은 성능을 보입니다.
  • but 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} ): mappair<key,value> 를 추가하는 함수

erase( key ): map 에서 key 에 해당하는 원소를 제거하는 함수
erase 방법: 특정 positionpair 삭제, key 를 통해 삭제, 범위 삭제

clear( ): 맵을 초기화하는 함수

operator = 대입연산자 가능

profile
다교미의 불꽃 에러 정복기

0개의 댓글