C程序员的哈希库

此页面列出了一系列可帮助您在C中编程的库。这里的库是开源的,用于帮助您存储数据,而无需滚动自己的链接列表等数据结构。

uthash

由Troy D.Hanson开发,任何C结构都可以使用uthash存储在哈希表中。只需包括#include"UT hash.h"然后在结构中添加一个UT Uhash#处理,并在结构中选择一个或多个字段作为密钥。然后使用散列添加,散列查找INT和宏来存储,检索或删除散列表中的项目。它使用int,string和二进制键。

14 Judy 15 16

Judy是一个实现稀疏动态数组的C库。Judy数组仅使用空指针声明,仅在填充时才使用内存。如果需要,他们可以成长为使用所有可用内存。Judy'主要优点是可扩展性,高性能和内存效率。它可以用于动态大小的数组,关联数组或简单易用的界面,不需要重新扩展或收缩,可以替换许多常见的数据结构,如数组,稀疏数组,哈希表,B树,二进制树,线性列表,跳过符,其他排序和搜索算法以及计数函数。

SGLIB

SGLIB是简单通用库的缩写,由单个标题文件SGLIB.h组成,它为数组,列表,排序列表和红黑树提供了最常见算法的通用实现。该库是通用的,它没有定义自己的数据结构。而是通过通用界面作用于现有的用户定义的数据结构。它也不分配或取消分配任何内存,也不依赖于任何特定的内存管理。

所有算法均以数据结构和比较器功能(或比较器宏中医健康养生知识)类型参数化的宏的形式实现。还有几个基因对于某些算法和数据结构,可能需要参数,例如'的名称;下一个'链接列表的字段。