반응형
해시 테이블?
키와 값을 받아 키를 해싱해서 나온 index에 값을 저장하는 선형 자료구조이다.
삽입은 O(1)의 시간 복잡도를 가지며, 삭제와 탐색도 키를 알고 있다면 O(1)의 복잡도를 가진다.
JavaScript에서 사용하기
const hashTable = [];
hashTable["key"] = 100;
hashTable["key2"] = "Hello";
delete hashTable["key"];
배열은 객체로 구성되어 있기 때문이라 해시 테이블처럼 사용할 수 있다.
하지만 이 방법은 올바른 사용방법이 아니기 때문에 추천하지 않는다.
const hashTable = {};
hashTable["key"] = 100;
hashTable["key2"] = "Hello";
delete hashTable["key"];
키와 값하면 가장 먼저 떠오를 객체를 사용하는 방법이다.
이 방법이 해시 테이블을 구현하는 가장 간단한 방법이다. 이 외에도 Map, Set 등이 있다.
반응형
'알고리즘 > 풀이 힌트' 카테고리의 다른 글
[알고리즘] 힙 - JavaScript (1) | 2022.08.13 |
---|---|
[알고리즘] 그래프 - JavaScript (0) | 2022.08.12 |
[알고리즘] Queue - JavaScript (0) | 2022.08.07 |
[알고리즘] Stack - JavaScript (1) | 2022.08.05 |
[알고리즘] 기준이 되는 배열로 만들 수 있는 모든 배열을 만들기 (1) | 2022.08.01 |