Algorithm/이론
(C언어) 체인 해시
innit
2021. 9. 29. 14:14
ChainHash.h
0.00MB
ChainHash.c
0.00MB
버킷 구조체
버킷이란 해시 테이블에 들어 있는 각각의 노드를 의미합니다.
해시 테이블에 있는 노드 하나 하나에 대한 형식입니다.
자료형은 'Node'를 사용합니다.
해시 테이블 구조체
해시 테이블 전체에 대한 형식입니다.
자료형은 'ChainHash'를 사용합니다.
함수 01 hash - 해시 함수
원본 데이터 key와 최대 용량 size를 이용해 해시 값을 생성하여 반환합니다.
함수 02 SetNode - 노드 값 설정
노드 n에 넣고 싶은 값(데이터 x, 다음 노드에 대한 포인터 next)을 넣습니다.
함수 03 Initialize - 해시 테이블 생성
최대 용량이 size인 해시 테이블 h를 생성합니다.
함수 04 Search - 해시 테이블에서 특정 데이터 검색
해시 테이블 h에서 데이터 x가 들어 있는 노드를 검색한 후, 그 노드에 대한 포인터를 반환합니다.
함수 05 Add - 노드 추가
해시 테이블 h에 데이터 x를 삽입합니다.
함수 06 Remove - 노드 삭제
해시 테이블 h에서 데이터 x를 삭제합니다.
함수 07 Dump - 해시 테이블 전체 출력
해시 테이블 h의 내용을 통째로 출력합니다.
함수 08 Clear - 해시 테이블 초기화
해시 테이블 h에 있는 모든 노드를 삭제합니다.
함수 09 Terminate - 해시 테이블 삭제
해시 테이블 h를 삭제합니다.
728x90
반응형