小编hop*_*pid的帖子

哈希函数对元素顺序不敏感

我正在使用具有非重复元素的整数序列,出于某种原因,我尝试通过构建哈希集来删除重复项。

int * a = {123, 145, 210, 77};
int * b = {145, 77, 123, 210}; // should be removed
int * c = {123, 37, 16};
int * d = {123, 145, 72, 91};
Run Code Online (Sandbox Code Playgroud)

是否有顺序不敏感的哈希函数返回相同的结果ab

我已经想出了一些解决方案,但它们的表现很差:

排序 - 序列是不可变的,排序将涉及额外的空间和 O(NlogN) 时间。

异或 - 序列中的元素范围从 0 到数百,可能会浪费许多位的哈希值。

还有其他方法吗?

c hash sequence hashset

6
推荐指数
1
解决办法
164
查看次数

标签 统计

c ×1

hash ×1

hashset ×1

sequence ×1