연습 문제 13의 동작을 그림 3-2와 그림 3-3에 나타냈습니다. 그림을 통해 연습 문제 13의 동작을 제대로 이해하기 바랍니다.
▲ 그림 3-2 해시 테이블의 기본 연산
▲ 그림 3-3 해시 테이블의 기본 연산(계속)
그림 3-2와 그림 3-3에서 확인할 수 있듯이 연습 문제 13에서는 같은 해시 값을 갖는 두 원소를 한꺼번에 저장할 수 없고, 하나를 포기해야 했습니다.
앞서 언급했듯이 해시 테이블을 사용할 때 단순히 해당 키가 있는지를 확인하는 것이 아니라 해당 키에 대응하는 값이 있는지를 확인해야 합니다. 이를 위해 해시 테이블에 키만 저장하는 것이 아니라 키와 값을 함께 저장하는 방식을 사용해야 합니다. 그러므로 삽입, 삭제, 룩업 함수에서 키를 기반으로 해시 값을 계산하여 배열에서의 위치를 알아낸 후, 함께 저장된 값을 이용할 수 있어야 합니다.