내 해시 테이블 구현에는로드가 약 70 %에 도달하면 테이블의 크기를 조정하는 기능이 있습니다. My Hash Table은 충돌을 위해 별도의 체인으로 구현됩니다. 언제든지 해시 테이블의 크기를 줄여야하나요, 아니면 그대로 두어야합니까? 로드가 70 % 일 때 크기를 늘리면 (실제로는 두 배 정도 증가합니다 : http://planetmath.org/enc
지금 해시 테이블은 해시 테이블에 삽입 된 모든 요소의 수를 계산합니다. 이 카운트를 총 해시 테이블 크기와 함께 사용하여로드 요소를 계산하고 70 %에이를 때마다 다시 계산합니다. 삽입 된 요소를 모두 계산하는 대신 빈 슬롯을 채우는 것으로 계산해야한다고 생각했습니다. 왜냐하면 내가 사용하고있는 충돌 방법은 별도의 체인입니다. 요인로드는 계속 증가하지만
어드레싱 개방하여 해시 테이블의 부하율 계산 항목을 삭제 : 그것은 저 발생한 그러나 numberOfKeysInArray/sizeOfArray
삭제 된 항목은 (공백과 구별하기 위해) 이와 같이 표시되어야하므로 키 수에 포함시켜야합니다. 내 생각에 엔트리를 찾기위한 평균 프로브 수를 계산할 때, 삭제 된 엔트리는로드 요소에 포함되어야하지만 새 키를 삽입
해시 테이블에서 검색 작업의 비용은 평균으로 O (1)라고합니다. 테이블의 주어진 목록 길이가로드에 비례하기 때문입니다 인자. 내가 얻지 못하는 것은로드 팩터가 우리가 저장하고자하는 엔트리의 수에 분명히 달려 있기 때문에 반드시 상수 일 필요는 없다는 것입니다. 우리가 자주 새 항목을 추가한다고 가정 할 때 평균 목록의 길이를 항목 수에 따라 다르게하지 않
hashmap의 기본로드 인자는 0.75이며, 변경 방법을 알고 싶습니다. 로드 팩토리를 설정하고 사용할 수있는 방법이 있습니까? 100k 레코드가 있고 반복해서 다시 해치고 싶지 않습니다. 다시로드하지 않고 효율적으로 작업 할 수 있도록로드 요소를 변경하고 싶습니다.는
해시 맵의로드 요소 기본값은 0.75f입니다. 즉, 해 맵의 75 % 용량이 채워지면 해시 맵을 다시 해시합니다. 예 : 2 (수퍼 (용량 + 1, 2.0f, true)) 여기에서 작동하는 방법 및 해시 작동 방식 내가 예를 들어 1보다 큰 말할 수 부하 계수의 값을 설정하면 어떻게