问题标签 [hashmap]

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 投票
4 回答
2803 浏览

data-structures - 三项HashMap无内部迭代

实现三项 hashMap 的最佳方法是什么?例如,我想使用一个常规的 String key ,但是让它映射到两个不同的对象。这个想法就像有一个列表列表,除了第一项是键。

我试图避免遍历列表(所以行为就像一个哈希图)。你同意唯一的方法是建立一个新的班级吗?似乎“HashMap3”对象(使用 get1(key) 和 get2(key) 方法)会很有用。我不确定如何自己设置。

如何创建集合?

0 投票
5 回答
2929 浏览

c++ - 使用 Hash Maps 表示一个非常大的数据源

我有一个非常大的可能数据集,我正试图立即可视化。该集合本身由数十万个段组成,每个段都映射到一个 id。

我收到了第二个数据源,它为每个段提供了更多实时信息,但 id 与我拥有的 id 不对应。

我有一个 1:1 的数据 id(9 个字符的字符串)映射到当前的 id(长整数)。问题是有很多 id,并且进来的数据没有特定的顺序。

我想出的解决方案是有一个哈希映射,将字符串映射到道路 ID。问题是我不知道哈希映射是否足够高效以拥有所有 166k 数据条目。

有没有人可以为此使用任何建议和/或散列算法?

0 投票
4 回答
144194 浏览

c - 在 C 中实现 HashMap

如何像 C++ STL 中那样从头开始在 C 中创建 Hashmap?

将考虑哪些参数以及如何测试哈希图?例如,在您可以说您的哈希图已完成之前,您将运行的基准测试用例是什么?

0 投票
1 回答
1798 浏览

c# - Java IdentityHashMap 的 C# 等价物

据我所知,C# 中没有直接的等价物。我目前的想法是使用带有自定义 IEqualityComparer 的 Dictionary 来检查引用是否相等。

然而,这似乎失去了通过散列获得的优势。有没有办法从每个不同的对象中获取一个单独的哈希码?或者这是不可能的,我应该使用其他方法?

0 投票
2 回答
362 浏览

c++ - 使用 Autoconf 处理弃用的包含

我一直ext::hash_map在 C++ 项目中使用,并注意到在 g++ 4.3 中它已被弃用,取而代之的是unordered_map. 我需要保持与不可用的旧系统的兼容性unordered_map。我突然想到,这正是我已经在使用的 autoconf 可以处理的事情。但是,我未能成功找到有关这样做的文档。

我想我需要执行以下操作:
- 将ext::hash_map我的代码中的所有实例替换为 - 将我的代码中的所有MY_HASH_MAP
实例替换为 - 在 configure.ac 中使用和的某种组合包含一行ext/hash_mapMY_HASH_INCLUDE
AC_CHECK_HEADERSAC_DEFINE

我无法准确地找出正确的 autoconf 魔法来完成这项工作,并且想知道它是否是最好的解决方案。当然,这是许多其他人会处理的事情,并且可能有一些我无法找到的标准解决方案?

所以,三个相关的问题:
- 有没有我应该使用的标准方法来处理这个问题?
- 我如何在 autoconf 中做到这一点?
- 我是否应该只使用 -Wno-deprecated 并假设 C++ 标准在我有生之年不会更新?

0 投票
6 回答
41859 浏览

hashmap - 使用数据库中的值填充枚举

我有一个映射字符串-> 整数的表。

我不想静态创建枚举,而是想用数据库中的值填充枚举。这可能吗 ?

因此,而不是静态地对此进行处理:

我想动态创建这个枚举,因为数字 {0,1,2,3} 基本上是随机的(因为它们是由数据库的 AUTOINCREMENT 列自动生成的)。

0 投票
6 回答
16657 浏览

java - 没有值的Java hashmaps?

假设我想将单词放入数据结构中,并且我想进行持续时间查找以查看单词是否在此数据结构中。我只想看看这个词是否存在。我会为此使用HashMap(containsKey()) 吗? HashMaps 使用键-> 值配对,但在我的情况下,我没有值。当然我可以使用 null 作为值,但即使是 null 也会占用空间。似乎这个应用程序应该有一个更好的数据结构。

该集合可能被多个线程使用,但由于集合包含的对象不会改变,我认为我没有同步/并发要求。

谁能帮我吗?

0 投票
3 回答
8902 浏览

visual-c++ - How to use stdext::hash_map?

I would like to see a simple example of how to override stdext::hash_compare properly, in order to define a new hash function and comparison operator for my own user-defined type. I'm using Visual C++ (2008).

0 投票
4 回答
203 浏览

java - 最佳场景设计

我有一个要求,我必须从数据库中选择大约 6000 万条记录。一旦我在 ResultSet 中拥有所有记录,那么我必须根据客户要求(日期格式和数字格式)格式化一些列,然后我必须将所有记录写入文件(辅助内存)。

  • 目前我正在从数据库中每天选择记录(7 天选择 7 次)并将它们放入 HashMap 中。从 HashMap 读取并格式化一些列,最后写入一个文件(单独的文件 7 天)。
  • 最后,我将所有 7 个文件合并到一个文件中。

  • 但这整个过程需要6个小时才能完成。为了改进这个过程,我创建了 7 个线程 7 天,所有线程都在编写单独的文件。

  • 最后,我将所有 7 个文件合并到一个文件中。这个过程需要2个小时。但我的程序将在 1 小时后进入 OutOfMemory 等。

请为这种情况提出最佳设计,我是否应该使用一些缓存机制,如果是,那么是哪一种以及如何使用?

注意:客户不想更改数据库中的任何内容,例如创建索引或存储过程,他们不想接触数据库。提前致谢。

0 投票
6 回答
34976 浏览

java - Java:基于正则表达式在 HashMap 键中搜索?

我正在使用 HashMap 构建同义词库来存储同义词。

我正在尝试根据正则表达式搜索单词:该方法必须将字符串作为参数并返回结果数组。这是我的第一次尝试:

现在,这不像我预期的那样工作(或者我可能错误地使用了正则表达式)。如果我在哈希图中有以下键:

然后通过调用searchDefinition("c")searchDefinition("c*")我得到null

  1. 我如何使这项工作按预期进行?
  2. 是否有比 HashMap 更好的数据结构来保持graph同义词库所需的相似?(只是好奇,至于这个作业,我们被要求使用 Java Collection Map)。
  3. 我在上面的代码中还有什么不恰当的地方吗?

谢谢,丹

编辑:我已经更正了这个例子。即使我使用正确的案例,它也不起作用。