2014-04-18 99 views
3

我想在javascript中編寫一個函數,它可以在每個可能的組合中將y元素分配給y元素。我列出了我想要達成的目標。 這是我猜測的一些基本的蠻力,但我無法弄清楚我應該如何編寫循環。我希望有人能幫助我。 在此先感謝Javascript計算每個組合循環

enter image description here

的代碼。我還沒有太多,因爲我試過的東西沒有用。

但我有一個全局定義的空數組,它是X long。我有另一個陣列充滿了相同的元素,並希望長度爲X的數組的每個組合包含長度爲Y的數組元素。

+0

您可以將圖像轉換爲PNG格式utleast我們可以在這裏看到下方這個問題? – Praveen

+2

即使不完整或不工作,您是否可以請求發佈您的代碼? –

+0

可能的重複[在JavaScript中排列?](http://stackoverflow.com/questions/9960908/permutations-in-javascript) – adeneo

回答

4

您正在尋找combination。在從here你的情況下,n = x和K = y.By借貸的代碼,你可以用這種方式進行可視化:

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); 
}); 

DEMO