해시 테이블 : 효율적인 탐색을 위한 자료구조로 키(Key)와 값(Value)로 구성
해시 함수 : 임의의 길이의 데이터를 고정된 길이의 데이터로 매핑하는 함수, 해시 함수를 사용하여 구한 Key를 해시라고함.
ex) 제곱법, 폴딩법, 기수변환법, 대수적코딩법, 계수분석법, 무작위법
해시충돌 대처 : 해시 함수를 사용하면 같은 key값이 나오는 경우가 있기때문에 이를 해결하는 방안
1. 체이닝(Chaining) : 해시를 변경하지 않고 값을 연결리스트로 연결시킴
2. 개방주소법(Open Addressing) : 해시를 변경시켜 저장함
- 선형 탐사(Linear Probing) : 다음이나 n개 뒤의 비어있는 해시에 데이터를 저장
- 제곱 탐색(Quadratic Probing) : 제곱한 해시에 데이터를 저장
- 이중 해시(Double Hashing) : 다른 해시함수를 한번 더 적용시킨 해시에 데이터를 저장
검색시 : O(1)
'CS이론 > 자료구조' 카테고리의 다른 글
비선형 구조 - 힙 (0) | 2020.11.20 |
---|---|
비선형 구조 - 그래프 (0) | 2020.11.16 |
비선형 구조 - 트리 (0) | 2020.07.04 |
선형 구조 - 스택, 큐 (0) | 2020.07.04 |
선형 구조 - 배열, 연속 리스트, 연결 리스트 (0) | 2020.07.04 |