C地图数据结构
我想用C实现一个键值对数据结构。有什么想法吗 是一个简单的哈希表 在ANSIC中实现。它支持 基本功能 需要一个哈希表:C地图数据结构,c,hashmap,C,Hashmap,我想用C实现一个键值对数据结构。有什么想法吗 是一个简单的哈希表 在ANSIC中实现。它支持 基本功能 需要一个哈希表: 插入和检索键值关联 对密钥存在性的质疑 返回键值关联的总数 枚举所有键值关联 希望这有帮助 中的hashmap实现也支持典型的map函数 我不久前发现了它,尽管我还没用过。您还可以检查库项目 我希望它可能对某些人有用。如果您的键和值部分是相同的数据类型,那么您可以使用2列的二维数组,其中第一列是键,第二列是数据。 它将表现为映射,但时间复杂度将有所不同。 时间复杂性: 搜
- 插入和检索键值关联
- 对密钥存在性的质疑
- 返回键值关联的总数
- 枚举所有键值关联
希望这有帮助 中的hashmap实现也支持典型的map函数 我不久前发现了它,尽管我还没用过。您还可以检查库项目
我希望它可能对某些人有用。如果您的键和值部分是相同的数据类型,那么您可以使用2列的二维数组,其中第一列是键,第二列是数据。 它将表现为映射,但时间复杂度将有所不同。 时间复杂性: 搜索-O(n) 插入- 要维护唯一密钥,则O(n) 其他的 O(1) 如果希望键值对具有不同的类型,则可以使用列表结构
struct node
{
int key; //key part
string value; // value part
struct node *next;
};
时间复杂性:
搜索-O(n)
插入-
要维护唯一密钥,则O(n)
其他的
O(1)。您映射到什么?你需要什么函数?int-to-int映射。ex1->23->5实际上,有点迂腐,这不是ANSI C,因为它定义了名称以“str”开头的函数。你不能这样做,以“str”开头的全局函数名的整个空间都是保留的。我不喜欢它,因为它没有指定函数的源代码,而且它似乎没有扩展或收缩。它只有固定数量的项。请投票选择timecomplexity提示。
struct node
{
int key; //key part
string value; // value part
struct node *next;
};