Page 447 - Do it! 자료구조와 함께 배우는 알고리즘(C 언어, 3쇄)
P. 447
37 printf("\a오류 : 추가에 실패했습니다(%s).\n",
38 (result == 1) ? "이미 등록됨" : "메모리 부족");
39 break;
40
41 case DELETE : /*--- 데이터 삭제 ---*/
42 x = ScanMember("삭제", MEMBER_NO);
43 result = Remove(&hash, &x);
44 if(result == 1)
45 printf("\a오류 : 이 번호의 데이터가 존재하지 않습니다.\n");
46 break;
47
48 case SEARCH : /*--- 데이터 검색 ---*/
49 x = ScanMember("검색", MEMBER_NO);
50 temp = Search(&hash, &x);
51 if(temp == NULL)
52 printf("\a검색에 실패했습니다.\n");
53 else {
54 printf("검색에 성공했습니다. : ");
55 PrintLnMember(&temp->data);
56 }
57 break;
58
59 case CLEAR : /*--- 모든 데이터 삭제 ---*/
60 Clear(&hash);
61 break;
62
63 case DUMP : /*--- 해시 테이블 덤프 ---*/
64 Dump(&hash);
65 break;
66 }
67 } while(menu != TERMINATE);
68 Terminate(&hash); /* 해시 테이블 종료 */
69
70 return 0;
71 }
다음의 실행 결과는 같은 해시 값을 갖는 회원 번호 1번과 14번의 데이터가 연결 리스트에 의
해 체인 모양으로 연결(link)되어 있음을 보여줍니다.
11•해시 447