해시 테이블의 크기를 정적으로 두십시오 (한 번 설정합니다). 엔트리 수에 따라 설정하고 싶습니다. 검색은 크기가 소수이고 2 * N (내가 추측하는 가장 가까운 소수)과 같아야 함을 확인했습니다. 여기서 N은 항목 수입니다.해시 테이블의 크기
해시 테이블은 새로운 항목을 허용하지 않으며 삭제하지 않는다고 가정합니다.
항목의 수는 2 * N이 나에게 너무 많은 것 같습니다 크기를 설정, 그러나
200, 2000, 20000 및 2000000 될 것입니다. 그렇지 않아? 왜? 그것이 있다면, 나는 골라야하는 크기입니까?
충돌을 피하고 싶습니다. 또한 해시 테이블에 이상적인 크기가 없다는 것을 이해하지만 출발점을 찾고 있습니다.
나는 C를 사용하여 나 자신을 교육하기 위해 자신의 구조를 만들고 싶다.
최적의 크기를 모르지만 해시 충돌이 있음을 명심하십시오. 이상적인 버켓 수는 해시 공간의 크기 및 해시 충돌 확률과 관련이 있다고 생각합니다. N이 클 경우 2 * N은 과도한 메모리 사용으로 보입니다. N이 작 으면 해시 충돌이 매우 드뭅니다. 따라서 2 * N도 낭비입니다. –
@EricJ. 내 질문을 업데이트했습니다. – gsamaras
"자신을 교육하기 위해"- 크기의 범위를 실험하고 결과를 이해하기 위해 초당 결과 작업을 계획하십시오. –