【发布时间】:2011-05-02 22:38:36
【问题描述】:
我在一个数组中有几个数字
var numArr = [1, 3, 5, 9];
我想循环遍历该数组并将每个唯一的 3 个数字组合相乘,如下所示:
1 * 3 * 5 =
1 * 3 * 9 =
1 * 5 * 9 =
3 * 5 * 9 =
然后返回所有计算的数组
var ansArr = [15,27,45,135];
谁有一个优雅的解决方案?提前致谢。
【问题讨论】:
-
在标题中您要求排列,但在正文中您提到组合。它是哪一个? (我猜是组合,因为乘法是可交换的。)
-
@DaveKingsnorth 注意:数组中有字符串,而不是数字。
-
@Sime Vidas - 这是一个错误,它们应该是数字而不是字符串
-
@DaveKingsnorth 数组中的数字是否不同?
-
@Sime Vidas - 并非总是如此,数组中可能有重复的数字