2

次の配列があります。

[1,2,3]
[I,II]
[A,B,C]

何通りの組み合わせが可能か知りたいです。例:

[1,I], [1,A], [2,I], [2,A], [3,I], [3,A], ...

数学にデカルト積と呼ばれるものがありますが、それを実装する方法がわかりません。

4

2 に答える 2

1

乗算を使用して、配列内の要素の可能な組み合わせの数を計算できます。

2 つの配列がarray1ありarray2、可能な組み合わせの数は になりますarray1.length * array2.length

var array1 = ['1','2', '3'];
var array2 = ['I', 'II'];

var posibleCombinations = (array1.length * array2.length);

上記の例の結果は 6 です。

3 つの配列では、各配列間の可能な組み合わせを計算し、それぞれの合計を追加します。

var array1 = ['1','2', '3'];
var array2 = ['I', 'II'];
var array3 = ['A','B','C'];

var posibleCombinations = (array1.length * array2.length) + (array1.length * array3.length) + (array2.length * array3.length);

上記の例の結果は 21 です。

于 2013-01-09T04:39:04.027 に答える
0
var array1 = [1,2,3],
    array2 = ['I','II'],
    array3 = ['A','B','C'];

var count = array1.length + array2.length + array3.length;
    count = count * (count -1);
console.log(count); // 56

式は次のとおりです。

n = total * (total -1) // -1 assuming that the first can't be equal to the second
于 2013-01-09T03:06:46.297 に答える