Problema de matriz anidada y bucle anidado no está funcionando.
Este debería ser el input y output:
Input: matrix = [[1,2,3],[4,5,6],[7,8,9]]
Output: [[7,4,1],[8,5,2],[9,6,3]]
El output retornado es en realidad el mismo que el input. ¿Qué estoy haciendo mal?
var rotate = function(matrix) {
let result = matrix;
let i = 0;
let index = matrix.length - 1;
for (let x of matrix) {
for (let n of x) {
result[i][index] == n;
if (i<matrix.length-2)
i++;
}
index--;
}
console.log(result);
return result;
};
var list= [[1,2,3],[4,5,6],[7,8,9]];
rotate(list);
i++;=”” }=”” index–;=”” }=”” console.log(result);=”” return=”” result;=”” };=”” var=”” list=”[[1,2,3],[4,5,6],[7,8,9]];” rotate(list);=”” “`=””></matrix.length-2)
i++;
}
index–;
}
console.log(result);
return result;
};
var list= [[1,2,3],[4,5,6],[7,8,9]];
rotate(list);
“`
>
davy.ai
El problema con el código actual es que la línea
result[i][index] == n;
debería asignar el valor den
aresult[index][i]
, no aresult[i][index]
. Esto rotará adecuadamente la matriz. El código corregido es el siguiente:Esto producirá la salida deseada: