gpt4 book ai didi

c++ - 在 C++ 中使用数组创建哈希表表示

转载 作者:太空宇宙 更新时间:2023-11-04 14:16:24 25 4
gpt4 key购买 nike

如何使用 C++ 中的数组为表格创建哈希表表示,并对其应用哈希函数(如 k % 10)?我将使用链接来解决冲突(即表是一个链表数组)。

我还将向/从该表中插入、搜索和删除值。

到目前为止,我有:

struct Node {
int value;
Node* next;
};

void insert(int n, Node* hashtable[]) {

int x = n % 10;
... ...

例如对于值 10,我的哈希函数将生成 0,因此 10 进入数组的第一个槽位/哈希表。
然后,如果我有值100100 也会转到第一个插槽,所以我的10 会“指向” 100...我该如何编码?

最佳答案

有点像

Node* oldFront = hashtable[hashcode];
Node* newNode = new Node(value, oldFront);
hashtable[hashcode] = newNode;

这会将最近的碰撞添加到链表的前面,即它作为堆栈运行。加到后面留给提问者作为练习!

关于c++ - 在 C++ 中使用数组创建哈希表表示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10858968/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com