2010-05-31 3 views
0

ISBN을 해시하는 좋은 방법은 무엇입니까? 내가 혼란스럽게 생각해서 죄송합니다. ISBN 크기의 책을 해시하고 싶지만 배열이 커질 수 있습니다. 해시 테이블은 암호화가 아닙니다. 프로그래밍 언어는 c이지만 이것은 일반적인 질문입니다. 업계에서 사용되는 ISBN 또는 제안 사항에 대한 표준 해싱 방법을 알고 싶습니다.책의 ISBN을

+2

해싱, 암호화 (예 : SHA1) 또는 해시 테이블 (Object.hashCode)의 종류는 무엇입니까? –

+0

.... 승님? –

+0

이것은 너무 개방적이어서 답변을하려고 시도합니다. 예상 데이터 샘플 세트는 무엇입니까? 크기? 해싱의 목적은 무엇입니까? –

답변

3

ISBN의 경우 업계 표준 인 해시 함수이 의심 스럽습니다. 업계 표준은 978 접두어 및 기타 접두사와 ISBN이 다른 게시자에게 할당되는 방식과 관련이 있습니다. 내 자신의 ISBN 기반 응용 프로그램에서 문자열과 함께 사용하기위한 늪지 표준 해시 함수를 사용합니다. 나는 ISBN이 10 진수 (또는 체크 디지트, 10 진수 또는 X의 경우)로 제한된다는 사실을 이용하지 않으며, 중복 되어도 체크 디지트를 해쉬한다. 10-13 자리 문자열을 해싱하는 것이 매우 빠르기 때문에 특수 사례를 사용하면 실제로 속도가 느려질 수 있습니다.

C 프로그래머 용으로 많이 사용되는 해시 함수에는 Jenkins 해시 함수가 포함됩니다. 또한 Hsieh, Torek, SuperFastHash 및 murmurhash입니다. 나는 다른 사람들이있을 것이라고 확신한다. 당신은 그들을 검색 할 수 있습니다. 또한 http://www.cse.yorku.ca/~oz/hash.html에서 컬렉션을 찾을 수 있습니다.

+0

+1은 사소한 데이터 크기에서 특정 알고리즘이 중요하지 않음을 지적합니다. –

+0

고맙습니다. – user1

관련 문제