組み合わせで数字を複製せずに、0から6までの数字の可能な組み合わせごとにテストを実行する必要があるjavascriptアプリケーションがあります。
つまり: 0123456、0123465、0123546、0123564 ...
(ただし、たとえば 0123455 は 5 が重複しているため含めないでください)
私はそれを繰り返し行いました:
function testAllCombinations(){
for(var i = 0; i < 7; i++){
for(var j = 0; j < 7; j++){
if(j == i)
continue;
for(var k = 0; k < 7; k++){
if(k == j || k == i)
continue;
for(var l = 0; l < 7; l++){
if(l == k || l == j || l == i)
continue;
for(var m = 0; m < 7; m++){
if(m == l || m == k || m == j || m == i)
continue;
for(var n = 0; n < 7; n++){
if(n == m || n == l || n == k || n == j || n == i)
continue;
for(var o = 0; o < 7; o++){
if(o == n || o == m || o == l || o == l || o == j || o == i)
continue;
runTest(i, j, k, l, m, n, o);
}
}
}
}
}
}
}
}
それはうまくいきますが、再帰的にやりたいのですが、アルゴリズムを構築するのに本当に苦労しています。
誰かが私に方向性を教えてもらえますか?
前もって感謝します。