/* a bucket is a linked list, each of whose entries contains a string and its hash */
typedef struct bucket bucket;
struct bucket {
char *string;
unsigned long int hash;
bucket *next;
};
/* By convention, the empty bucket is NULL. */
typedef struct hash_table htbl;
struct hash_table {
unsigned long int(*hash)(char*);
bucket **buckets; /* an array of buckets */
unsigned int n_buckets;
};
Я пытаюсь понять структуру hash_table.В частности, какова цель и использование unsigned long int(*hash)(char*);
?Я чувствую, что могу реализовать хеш-таблицу без нееЛюбая помощь будет оценена.Спасибо!