【发布时间】:2016-06-28 01:41:09
【问题描述】:
我正在研究一个函数,该函数采用矩阵的维度并在给定这些维度的情况下遍历所有可能的二进制矩阵。我正在递归地执行它,并计划稍后使用 DP 实现它以获得更好的性能。这是我的尝试,它不起作用。警告fill 函数是我相信的 ES6 函数。 JSFiddle here.
var printAllBinMatsAux = function(m, n, r, c, mat) {
console.log(mat);
if (r >= m) return;
if (c === n - 1) {
return printAllBinMatsAux(m, n, r + 1, 0, mat.slice());
}
printAllBinMatsAux(m, n, r, c + 1, mat.slice());
mat[r][c] = 1;
printAllBinMatsAux(m, n, r, c + 1, mat.slice());
}
var printAllBinMats = function(m, n) {
var mat = [];
for (var i = 0; i < m; i++) {
var row = new Array(n).fill(0);
mat.push(row);
}
printAllBinMatsAux(m, n, 0, 0, mat);
}
printAllBinMats(3, 4);
【问题讨论】:
标签: javascript matrix binary