Mam tablicę, powiedzmyZnajdź takie same wartości w tablicy przekątnej
var array = [ [1, 0, 0, 0, 0, 0, 0],
[0, 1, 0, 0, 0, 1, 0],
[0, 0, 1, 0, 1, 0, 0],
[0, 0, 0, 1, 0, 0, 0],
[0, 0, 1, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0]
]
i chciałbym stworzyć, aby znaleźć jakiekolwiek mecze, gdzie pojawia się numer cztery razy po przekątnej.
Obecnie używam
function checkDiagonal(array, bottomToTop) {
var Ylength = array.length;
var Xlength = array[0].length;
var maxLength = Math.max(Xlength, Ylength);
var temp;
var returnArray = [];
for (var k = 0; k <= 2 * (maxLength - 1); ++k) {
temp = [];
for (var y = Ylength - 1; y >= 0; --y) {
var x = k - (bottomToTop ? Ylength - y : y);
if (x >= 0 && x < Xlength) {
temp.push(array[y][x]);
}
}
if(temp.length > 0) {
returnArray.push(temp.join(''));
}
}
return returnArray;
}
jednak nie zawsze znaleźć wszystkie rozwiązania
ten link może być pomocne dla Ciebie http://stackoverflow.com/questions/21011011/multi-dimensional-array-check-for-diagonal-consecutive-values – Geeky
czym jesteś oczekując, że wartość zwracana będzie w tym przykładzie? – jjenzz