퀴즈 / 알고리즘 / 문제

알고리즘에서 '해시 충돌(Hash Collision)' 해결 방법 중 '선형 탐사(Linear Probing)'의 문제점은?

어려움 freeCodeCamp
보기 및 정답
A 충돌이 연속된 위치에 몰리는 '1차 클러스터링(Primary Clustering)' 현상이 발생하여 검색 성능이 저하된다
B 충돌이 발생할 때마다 해시 테이블의 전체 크기를 두 배로 확장해야 하므로 메모리 사용량이 급격히 증가한다
C 충돌이 발생하면 기존의 해시 함수를 폐기하고 완전히 새로운 해시 함수로 전체 테이블을 재해싱해야 하므로 전환 비용이 매우 크다
D 각 슬롯에 연결 리스트를 사용하여 충돌 데이터를 저장하므로 포인터 오버헤드가 크고 메모리 단편화가 발생한다

해설

선형 탐사는 충돌 시 다음 빈 슬롯(index+1, index+2...)을 순차 탐색합니다. 채우기율이 높아지면 충돌된 항목들이 연속으로 뭉치는 1차 클러스터링이 발생하여, 삽입/검색 시 긴 연속 구간을 탐사해야 합니다. 이를 개선하기 위해 이차 탐사(Quadratic Probing)나 이중 해싱(Double Hashing)을 사용합니다.

코딩, 제대로 배우고 싶다면?

개념 확인은 퀴즈로, 실력은 실전 프로젝트로.
투더제이 코딩클래스에서 시작하세요.

정규반 살펴보기
START THE LOOP · CHOOSE

시장과 사람의 답을 봤다면,
다음 결과물의 구조를 고릅니다.

한 번의 결과에 기대지 않고 다시 만들 수 있도록, 문제 발견부터 제작·배포·수익화까지 이어지는 전체 흐름을 익혀보세요.

TTJ CLASS에서 다음 구조 고르기
처리 중...