通过本文主要向大家介绍了c hashtable,c hashtable用法,c hashtable遍历,c hashtable 排序,c hashtable原理等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
HashTable是在实际应用中很重要的一个结构,下面讨论一个简单的实现,虽然简单,但是该有的部分都还是有的。
一,访问接口
创建一个hashtable.
hashtable hashtable_new(int size) /其中size表示包含的接点个数。
存入key-value至hashtable中。
void hashtable_put(hashtable h,const char* key,void *val);
根据key从hashtable中取出value值。
void * hashtable_get(hashtable h,const char *key);
释放hashtable。
void hashtable_free(hashtable h);
释放单个hash 接点
void hashtable_delete_node(hashtable h, const char *key);
二,数据结构
hash接点的结构:
三,创建hashtable
代码如下:
四,存入key-value值
在这个操作之前,先要定义一个根据KEY值计算hashcode的函数。
六,释放HASHTABLE
hashtable的释放就比较简单了,因为我们所有的内存申请都在内存池上完成的,就只需要释放内存池,如下:
<