与えられたarr = ['mat','cat','fat']
関数getComb(arr, n = 2)
ここで、nは各組み合わせに必要な単語の数です。
期待される結果:
マット猫
マット脂肪
猫の脂肪
私は、望ましい結果を得るために、任意の更なる下のコードを変更することができませんでした。何か案が? THX Knskan3へm単語の配列からのn個の単語の組み合わせ - Javascript
ありがとう:
'getCombinations': (arr, n) => {
let i, j, k, elem, l = arr.length, childperm, ret = [];
if (n === 1) {
for (let i = 0; i < arr.length; i++) {
ret.push([arr[i]]);
}
return ret;
}
else {
for (i = 0; i < l; i++) {
elem = arr.shift();
for (j = 0; j < elem.length; j++) {
childperm = lib.getCombinations(arr.slice(), n - 1);
for (k = 0; k < childperm.length; k++) {
ret.push([elem[j]].concat(childperm[k]));
}
}
}
return ret;
}
},
は、オーダーの問題をしていますか? ['cat'、 'mat'] '[cat mat']または['cat mat'、 'mat cat']のn === 2の出力を期待しますか? – Paul
注文の組み合わせがありません。それはここでは当てはまらない順列のためのものにすぎない。 :) –