데이터를 다루는 기법 중 하나로 검색과 저장이 빠르게 진행
빠르게 진행 될 수 있는 이유
- 데이터를 검색 할 때 사용할 key와 실제 데이터의 값(value)이 한 쌍으로 존재
- key값이 배열의 인덱스로 변환되기 때문에 검색과 저장의 평균적인 시간 복잡도가 O(1)에 수렴
임의의 길이의 데이터를 고정된 길이의 데이터로 매핑하는 함수
이 때 매핑 전 원래 데이터의 값을 key, 매핑 후 데이터의 값을 hash value, 매핑하는 과정을 hashing이라고 합니다.
많은 양의 데이터에서 데이터의 위치를 빠르게 찾기위해 사용