2011-11-09 1 views

답변

5

버킷 ID를 찾은 다음 해당 버킷 ID를 사용하여 해당 키와 관련된 데이터를 저장하거나 검색합니다.

즉, 귀하의 경우, 배열 인덱스의 버킷 ID를 제공하는 해시 함수를 데이터에 제공하면됩니다.

아마도 가장 단순한 (그리고 가장 순진한) 키의 모든 문자를 배타적으로 OR 연산 한 다음 모듈러스 연산을 수행하여 원하는 범위로 가져올 수 있습니다.

  • 이름
  • 주소
  • 전화 다음과 같이 해시를 생성 할 수

기타 세부 사항의

  • 모든 종류 :

    예를 들어, 포함하는 구조를 갖고 있다고
    set hashval to zero 
    for each character in Name: 
        hashval = hashval xor character 
    hashval = hashval mod 256 
    

    이렇게하면 버킷 ID가 bet이됩니다. 0과 255를 포함한 0입니다.

    버킷에는 배열 인덱스로 버킷 ID를 사용할 수 없으므로 버킷에 둘 이상의 항목이 포함될 수 있습니다. 각 버킷은 개의 여러 개의 항목 (예 : 해시 테이블)을 포함하는 구조 여야합니다.

  • 1

    데이터 구조와 알고리즘, 또는에 텍스트 책을 읽기에 아직 도착/추가/삭제 할 수 있어야 단지 Wikipedia "Hash Table" entry 해시 테이블은 기본적으로 함수와 해시, 입력 키를 취

    1

    귀하의 JDK와 함께 제공되는 구현은 자습을 위해 매우 적합합니다 (비록 최소한의 방법으로는 인정하지 않음). look at it here 있습니다.