问题标签 [ordered-map]

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 投票
1 回答
90 浏览

scala - 在 Scala 中,是否可以通过迭代 ListMap 将部分函数的集合构建成一个函数?

昨天,@Krzysztof Atłasik 帮助我弄清楚了如何通过使用部分函数来减少匹配中的冗余,所以以前的样子:

现在看起来像:

好的,它更简洁,更干燥,但我想我想更进一步。

我已将所有值放入 ListMap,例如:

现在,我试图弄清楚如何将这张地图转换成一系列的平分函数。

我认为它会是这样的:

但这不会编译。

任何想法如何使这项工作?

谢谢!

0 投票
1 回答
1402 浏览

rust - 如何获得有序集/有序图的最大值和最小值?

Rust 的有序集是BTreeSet

有序映射是一个BTreeMap.

由于 set 和 map 是有序的,所以应该有一种方法来获取包含的最大和最小元素。你怎么得到它们?

0 投票
1 回答
142 浏览

c++ - C ++映射不删除元素

给定一个目标 K 和一个不同元素的数组,任务是从数组中删除总和为 K 的所有对。

这是我遵循的方法

删除逻辑

打印输出:

输入 :

程序输出

预期产出

0 投票
1 回答
76 浏览

symfony - 您一般如何解释有序地图?

我目前正在尝试学习 Symfony,其中很大一部分是 Doctrine。我一直在阅读 Doctrine 的官方文档,在关于Collections 库的部分中,我偶然发现了这个叫做“有序地图”的东西。我试图在谷歌上搜索它,但我找不到任何令人满意的答案。只有特定语言(主要是 Java 和 C++)的答案,但我想总体上理解它。它是如何工作的以及它是什么,因为在 Doctrine 文档中他们将它与 ArrayCollection 进行了比较,所以我希望如果我能理解它是什么,我也会更容易理解 ArrayCollection。

我试图搜索诸如“什么是有序地图”或“有序地图解释”之类的内容,但正如我之前所说,我没有找到我要找的东西。

0 投票
1 回答
54 浏览

c++ - 我正在尝试按降序对地图进行排序,但没有得到想要的结果?

我想要的输出应该是 G 3 T 2 A 1 C 1 但它显示 T 2 G 3 C 1 A 1 我不知道为什么会这样,因为我已经提到它在有序映射中更大。请好心解决问题?

0 投票
1 回答
91 浏览

c++ - c++ 中 m.erase() 函数的奇怪行为?

输出:

据我所知m.find(3),将迭代器返回到m.end()if 键未找到。那么为什么要删除对 {2,3} 呢?

0 投票
0 回答
225 浏览

rust - 如何使用运行时定义的比较器定义有序 Map/Set?

这类似于如何在 BTreeSet 中使用自定义比较器函数?但是在我的情况下,直到运行时我才会知道排序标准。可能的标准是广泛的,不能硬编码(想想像按目标距离排序或按有效负载中的特定字节或其组合排序)。创建地图/集后,排序标准不会改变。

我看到的唯一选择是:

  • 使用 a Vec,但 log(n) 插入和删除至关重要
  • 用排序标准(直接或间接)包装每个元素,但这似乎很浪费

这对于标准 C++ 容器std::map/是可能的,但对于 Rust 的/std::set似乎是不可能的。标准库或另一个板条箱中是否有替代方案可以做到这一点?还是我必须自己实施?BTreeMapBTreeSet


我的用例是一个类似数据库的系统,其中集合中的元素由模式定义,例如:

但由于模式是用户在运行时定义的,因此元素存储在一组字节 ( BTreeSet<Vec<u8>>) 中。同样,元素的顺序是用户定义的。所以我会给的比较器BTreeSet看起来像|a, b| schema.cmp(a, b)。硬编码,上面的例子可能看起来像:

0 投票
0 回答
16 浏览

java - Apache Mina 与 Aries 蓝图集成有问题

https://mina.apache.org/mina-project/userguide/ch17-spring-integration/ch17-spring-integration.html

链接的用户指南,它写道它适用于所有 DI 框架。

但是通过 Aries Blueprint 注入时出现以下错误且未初始化。

这是错误内容的 xml 语法。

更改日志级别调试时,我看到以下日志。

调试 [Blueprint Extender: 1] java.util.HashMap 不是 LinkedHashMap。

调试 [Blueprint Extender: 1] java.util.HashMap 没有实现 OrderedMap 接口。

调试 [蓝图扩展器:1] 不得已;尝试使用默认构造函数创建一个新的地图实例并测试是否保持插入顺序。

DEBUG [Blueprint Extender: 1] 指定的地图在 3 次尝试后未通过插入顺序测试。

这个调试日志写在 org.apache.mina.core.filterchain.DefaultIoFilterChainBuilder.java

类中有这样的注解和方法。

“检测 Jakarta Commons Collections OrderedMap 实现”

如果注入的类型不是OrderedMap,可以看到试图创建一个新的Map。

使用现有的 Spring DM 属性时,预计会创建相同的新地图并尝试一下,但没有失败。

为什么?使用蓝图属性时会失败吗?

我错过了什么?有更好的选择吗?