我试图在javascript中编写一个函数,可以在每个可能的组合中将y元素分配给y个元素。我列出了我想要实现的目标。 我猜这是一些基本的蛮力,但我无法弄清楚应该如何编写循环。我希望有人可以帮助我。 提前致谢
代码。我还没有多少,因为我尝试过的东西都没有用。
但是我有一个全局定义的空数组,它是X长的。我有另一个充满THE SAME元素的数组,并希望X长度数组的每个组合都包含长度为Y的数组元素。
答案 0 :(得分:4)
您正在寻找combination。在您的情况下,n = x和k = y。通过here借用代码,您可以通过这种方式将其可视化:
var x = 7;
var y = 3;
comb(y,x).forEach(function(item){
var tr = $('<tr>');
for(var i=0; i<x;++i){
tr.append('<td>');
}
var chunks = item.split(" ");
chunks.pop();
chunks.forEach(function(index){
tr.find("td").eq(+index).addClass("black");
});
$("table").append(tr);
});