알고리즘과 자료구조
HashMap과 HashTable
Mecodata
2023. 2. 2. 16:40
Hash
- 임의의 길이를 가진 데이터를 고정된 길이를 가진 데이터로 매핑한 값
HashMap과 HashTable 비교
HashMap | HashTable | |
key와 value null 허용 |
O | X |
Thread-safe | X | O |
Enumeration | X | O |
멀티 스레드 | 부적합(비동기) | 적합(동기화 지원) |
해시 충돌 | 상대적으로 적게 발생 (보조 해시 함수 사용) | 상대적으로 많이 발생 (보조 해시 함수 사용 X) |
key 중복 | X | |
value 중복 | O | |
저장 방식 | key:value 형태로 저장 (Map 인터페이스를 상속받아 구현) | |
탐색 속도 | O(1)로 빠름 => 해시 함수에 키를 넣으면 값이 저장된 해시 값(인덱스)를 돌려주기 때문 | |
정의 | 키(key)에 대한 해시 값을 사용하여 값(value)을 저장하는 자료구조 |