问题标签 [reducing]

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 回答
6454 浏览

java - Java Collectors.reducing 实现

上面的代码进行了归约操作。将整数流和聚合函数转换为返回 Integer 。我无法理解以下代码和归约操作的内部实现。Java 如何执行以下有状态功能?谢谢!

可能是,我会更好地澄清我的问题。上述实现如何获取数据流。a[0],b[0] 是指数据流吗?我相信以上内容为供应商和累加器提供了功能实现。我想了解减少过程是如何通过代码进行的。

0 投票
1 回答
817 浏览

java - Java Streams:替换 groupingBy 和 reduce by toMap

我之前问过一个关于增强一些代码的问题,在这里@Holger给了我正确的回应,他说:

每当您发现自己使用带有 groupingBy 的缩减收集器时,您应该检查 toMap 是否更合适

这似乎是一种模式!他建议我做的非常完美。

这是一个众所周知的模式吗?为什么toMap比(在某些情况下)结合groupingByand更好reducing

0 投票
4 回答
47 浏览

javascript - 从对象数组中获取特定数据并转换为对象

我有一个对象数组。在每个对象中也是另一个数组。

结构:

我试图从数组中获取:标签和类别。输出应该是:

我尝试了一些概念,但结果并不如我所愿:(

例如:

或更好(但不幸的是不理想)

您有什么想法吗,如何实现?谢谢!

0 投票
1 回答
221 浏览

java - 如何使用 Java 8 groupingBy 收集到不同类型的列表中?

我正在尝试获取 type 的地图A -> A,并将其分组为A to List<A>. (也颠倒了键值关系,但我认为这不一定相关)。

这就是我现在所拥有的:

我想在单个语句中执行此操作,并且我觉得必须可以将 to 转换Map<Thing, List<Map.Entry<Thing, Thing>>>为操作Map<Thing, List<Thing>>的一部分groupingBy

我试过使用reducing()自定义收集器,我能找到的一切;但由于缺乏复杂的示例,以及我能找到的少数类似示例List.of()在 Java 8 中不存在(Collections.singletonList()似乎不是一个好的替代品),我感到很困难。

有人可以帮我解决可能很明显的问题吗?

0 投票
4 回答
379 浏览

java - 为什么 Stream.reduce 采用 BinaryOperator而不是 BiFunction?

对于我的具体情况,我想在减少中使用功能组合;例如:

这有一个编译错误:

相反,我需要这样做:

然而,这失去了组合提供的无点风格。

为什么 Stream API 是这样设计的?ABinaryOperator是 a ,所以用超类型BiFunction声明方法的参数不是更有意义吗?reduce

0 投票
2 回答
87 浏览

java - Java:有没有更优雅的方法可以使用 reduce 从现有列表中提取新列表?

我正在尝试获取元素列表,对这些元素的一部分进行一些操作,并将这些操作的输出放入一个新列表中。我只想在列表中进行一次迭代。

我发现这样做的唯一方法是:

如您所见,这非常麻烦。

我当然可以使用filterthen map,但在这种情况下,我会迭代列表两次。

在其他语言(例如Javascript)中,这种reduce操作非常简单,例如:

惊人!我在想,Java 是否有更好的 reduce 版本,或者我编写的 Java 代码是执行这种操作的最短方法。

0 投票
0 回答
100 浏览

c++ - 减少 C++ 中的嵌套循环

任何人都可以降低这个问题的时间复杂度吗?我发现这样做有很大的困难。

0 投票
0 回答
28 浏览

javascript - Javascript - 通过减少和映射将对象转换为特定数组

我想要在 JavaScript 中进行一次转换。我知道通过映射或减少我可以进行这种转换。下面的细节告诉你我的目的。我有一个这样的特定对象:

具有以下映射:

我得到以下结果:

任何人都可以告诉我可以得到哪些映射或减少finalObject object?请注意,结果具有唯一的键和数组。

0 投票
1 回答
23 浏览

expression - 为什么有些符号表达式没有得到简化?

嗨,我正在为我的古典力学 I 课程研究拉格朗日力学的振荡问题模型。

我的问题如下:

当我尝试简化一些如下图所示的表达式时,sympy 只显示除法而不是简化表达式。

我想知道这是否是 SymPy 的某种限制(可能不是这种情况)或者只是我错过了一些东西。 在此处输入图像描述

0 投票
3 回答
58 浏览

java-stream - 在 Java 8 流中减少下游收集器后如何更改最终类型?

我得到了一个遗留应用程序,它使用以下玩具片段中的数据结构,我无法轻易更改这些数据结构。

我使用 Java 8(仅)流来进行一些统计,但我未能使用收集器获得所需的类型。

我需要结果类型, Map<String, Map<String, String>>而不是Map<String, Map<String, Double>> 通过将“纬度”从转换回DoubleString使用自定义格式,而不是Double.toString())。

我未能使用收集器方法(如 andThen 或 collectAndThen,...

我目前坚持使用 Java 8。

有没有办法Map<String, Map<String, String>>使用相同的流获得结果?