C语言哈希表的简单实现——数组+链表(拉链法)
1.哈希表简介
哈希表详细介绍可以参考这篇文章
2.哈希表拉链法实现
2.1完全由本人思路实现,如有错误,欢迎批评指正
哈希声明文件hash.h
#ifndef __HASH_H_
#define __HASH_H_
#define size 100
#include <stdbool.h>
#include <stdio.h>
#include <stdlib.h>
typedef struct hash_value_{
int _int_key;
double _double_key;
float _float_key;
char _char_key;
char *_str_key;
int _int;
double _double;
float _float;
char _char;
char *_str;
struct hash_value_ * _hash_value_next;
}hash_value;
hash_value *hash_arry[size];
void hash_default(hash_value *hash_arry_[]);
int hash_int(int key);
int hash_double(double key);
int hash_float(float key);
int hash_char(char key);
int hash_charstr(char *key);
bool add_mod_key_value_int(int key,int value);
int get_key_value_int(int key);
bool add_mod_key_value_charstr_int(char *key,int value);
int get_key_value_charstr_int(char *key);
#endif
哈希实现hash.c
#include "hash.h"
#include "string.h"
void hash_default