알고리즘과 자료구조

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)을 저장하는 자료구조