세상을 더 편리하게
article thumbnail
[CS] 해시테이블 HashTable
Programming/CS 2023. 4. 22. 16:21

HashTable이란?? (Key, Value)로 데이터를 저장하는 자료 구조 Key를 hash function에 넣으면 고유의 값이 나오게 된다. 이 고유의 값을 index로 활용해서 검색 저장하는 테이블을 HashTable이라 합니다. 이상적인 조건하에 HashTable의 장점은 검색, 삭제, 삽입 모두 O(1)이라는 점이다. (이상적인 조건은 아래에 적겠습니다.) 하지만 단점도 존재한다. - 일반적인 배열에 비해서 저장공간이 많이 필요한다. - Hash 충돌에 대한 별도의 자료구조가 필요하다. - 순차적인 값들을 정렬 혹은 값들이 필요할 때는 배열에 비해 비효율적이다. Hash 충돌 Hash 충돌이 일어나지 않는 것이 HashTable에서 가장 이상적인 상황이다. 그럼 Hash 충돌에 대해서 알아보..