问题标签 [hash]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
9 回答
125217 浏览

perl - 遍历 Perl 哈希键的最安全方法是什么?

如果我有一个带有一堆(键,值)对的 Perl 哈希,那么遍历所有键的首选方法是什么?我听说使用each可能会以某种方式产生意想不到的副作用。那么,这是真的吗,以下两种方法之一是最好的,还是有更好的方法?

0 投票
11 回答
52301 浏览

c++ - 在 C++ 中创建稀疏数组的最佳方法是什么?

我正在研究一个需要处理巨大矩阵的项目,特别是用于 copula 计算的金字塔求和。

简而言之,我需要在矩阵(多维数组)中的大量零中跟踪相对少量的值(通常为 1,在极少数情况下超过 1)。

稀疏数组允许用户存储少量值,并将所有未定义的记录假定为预设值。由于物理上不可能将所有值存储在内存中,因此我只需要存储少数非零元素。这可能是几百万个条目。

速度是重中之重,我还想在运行时动态选择类中变量的数量。

我目前在一个使用二叉搜索树(b-tree)来存储条目的系统上工作。有人知道更好的系统吗?

0 投票
3 回答
4075 浏览

c# - 如何在 C# 中实现 sdbm 哈希函数?

如何在 C# 中实现sdbm散列函数(例如this )?

0 投票
11 回答
46926 浏览

c# - How do I generate a hashcode from a byte array in C#?

Say I have an object that stores a byte array and I want to be able to efficiently generate a hashcode for it. I've used the cryptographic hash functions for this in the past because they are easy to implement, but they are doing a lot more work than they should to be cryptographically oneway, and I don't care about that (I'm just using the hashcode as a key into a hashtable).

Here's what I have today:

Any thoughts?


dp: You are right that I missed a check in Equals, I have updated it. Using the existing hashcode from the byte array will result in reference equality (or at least that same concept translated to hashcodes). for example:

With that code, despite the two byte arrays having the same values within them, they are referring to different parts of memory and will result in (probably) different hash codes. I need the hash codes for two byte arrays with the same contents to be equal.

0 投票
7 回答
2370 浏览

hash - 为什么下载有时会标记 md5、sha1 和其他哈希指标?

我到处都看到了这个:

在这里下载!SHA1 = 8e1ed2ce9e7e473d38a9dc7824a384a9ac34d7d0

这是什么意思?就下载而言,哈希是如何发挥作用的……我能用它做什么?这是一个遗留项目,您曾经在下载整个文件后必须验证一些校验和?

0 投票
9 回答
27906 浏览

arrays - 你将如何用语言 x 实现哈希表?

这个问题的重点是收集使用不同语言的数组实现哈希表的示例列表。如果有人可以对它们的工作方式以及每个示例发生的情况进行非常详细的概述,那也很好。

编辑:

为什么不直接使用特定语言的内置哈希函数?

因为我们应该知道哈希表是如何工作的并且能够实现它们。这似乎不是一个超级重要的话题,但了解最常用的数据结构之一如何工作对我来说似乎非常重要。如果这要成为编程的维基百科,那么这些是我将来到这里的一些类型的问题。我不是在寻找要在这里写的 CS 书。我可以将 Intro to Algorithms 下架并阅读有关哈希表的章节并获取此类信息。更具体地说,我正在寻找的是代码示例。不仅对我尤其如此,而且对于可能有一天会搜索类似信息并偶然发现此页面的其他人也是如此。

更具体地说:如果你必须实现它们,并且不能使用内置函数,你会怎么做?

你不需要把代码放在这里。将其放入 pastebin 并链接它。

0 投票
8 回答
76438 浏览

java - 如何在 Java 中创建哈希表?

在 Java 中创建哈希表(或关联数组...)的最直接方法是什么?我的 google-fu 出现了几个例子,但是有标准的方法吗?

有没有一种方法可以用键-> 值对列表填充表,而无需为每一对单独调用对象的 add 方法?

0 投票
4 回答
90356 浏览

ruby - 如何在 ruby​​ 中创建 SHA1 哈希?

SHA 哈希函数

0 投票
9 回答
170725 浏览

algorithm - 什么是好的哈希函数?

什么是好的哈希函数?我在大学的数据结构课程中看到了很多散列函数和应用程序,但我大多都知道要制作一个好的散列函数非常困难。作为避免碰撞的经验法则,我的教授说:

(mod 是 C 和类似语言中的 % 运算符)

以素数为哈希表的大小。我知道这是一种避免碰撞和快速的功能,但我怎样才能做出更好的功能呢?对于数字键,字符串键是否有更好的哈希函数?

0 投票
5 回答
818 浏览

perl - 保存 Perl Windows 环境键 UPCASES

我有一个用 Perl 编写的框架,它设置了一堆环境变量来支持进程间(通常是子进程)通信。我们在 XML-ish 文件中保存一组键/值对。我们尝试将键名命名为 camel-case somethingLikeThis。这一切都很好。

最近我们有机会将控制(链)进程从 Windows 传递到 UNIX。当我们从 Windows 将哈希值吐出%ENV到文件时,somethingLikeThis密钥变为SOMETHINGLIKETHIS. 当 Unix 进程获取文件并重新加载环境并查找它的值时,$ENV{somethingLikeThis}它的值不存在,因为 UNIX 区分大小写(从 Windows 端来看,相同的代码可以正常工作)。

此后我们返回并将所有键更改为大写并解决了问题,但这很乏味并给用户带来了痛苦。有没有办法让 Windows 上的 Perl 保留环境哈希键的字符大小写?