이 해시 함수에 어떤 문제가 있습니까? 특히, N = 127이 전달되면 어떻게됩니까?이 해시에 어떤 문제가 있습니까?
int hash3(char *k, int N)
{
char *c; int h = 0;
for (c = k; *c != '\0'; c++) {
h = h | *c;
}
return (h % N);
}
이것은 실습 시험에서 제기 된 질문이었습니다 (불행히도 해결책이 없었 음). 내가 이해하는 바와 같이 함수는 비트 단위를 사용하거나 문자열을 정수로 변환하여 크기 N의 테이블에 배치하지만 실제로 왜 잘못 될지 알지 못합니다. 미리 감사드립니다.
긴 문장을 입력하고 반환 할 내용을 확인하십시오. – ymonad