컴퓨터(Computer Science)/자료구조(Data Structure)

[C언어] 자료구조 - Hash 체이닝(chaining)-3

게임이 더 좋아 2019. 12. 15. 10:59
반응형
728x170

체이닝은 앞에서 말했다시피 슬롯의 개수가 정해져있어서 오버플로우가 생기는데 그렇다면

자료구조의 형태를 배열이 아닌 연결리스트로 연결하겠다!!! 라고 해서 만든 것이다.

그래서 여기에는 슬롯 사이즈가 들어가지 않는다.

 

대충 이렇게 만든다.

void main()
{
init_map();
add_record("age", "A");
add_record("ant", "A");
add_record("allow", "A");
add_record("best","B");
add_record("beef","B");
add_record("bye","B");
add_record("creep", "C");
add_record("conscience", "C");
add_record("dirty", "D");
add_record("distinguish","D");
add_record("exam","E");
add_record("excellent","E");
add_record("fool", "F");
add_record("full", "F");
add_record("game", "G");
add_record("good","G");
add_record("great","G");
add_record("high","H");
add_record("hyperbolic", "H");
add_record("intelligent", "I");
add_record("ion", "I");
add_record("joker","J");
add_record("korea","K");
add_record("lemon","L");
add_record("monster", "M");
add_record("operation", "O");
add_record("queen", "Q");
add_record("rust","R");
add_record("special","S");
add_record("terrific","T");
print_map();
search_record("exam");
search_record("special");
search_record("high");
search_record("lemon");
search_record("terrific");

}

 

이러한 결과가 나온다. 슬롯처럼 계속 늘어난다.

여기서 가장 중요한 것은 먼저 입력된 것이 리스트 뒤에 있다는 것이다.

반응형
그리드형