Rotar la matriz 90 grados en sentido horario no funcionando correctamente.
Aquí, después de transponer la matriz, quiero invertir las filas para obtener la rotación de la matriz, pero hasta que se transponga, no da una salida adecuada.
“`javascript
import React from "react";
export default function DropDown() {
let matrix = [
[ 1, 2, 3, 4 ],
[ 1, 0, 3, 4 ],
[ 1, 2, 3, 4 ],
[ 1, 2, 3, 4 ],
];
for(let i=0;i<4;i++)
{
for(let j=0;j<i;j++) {let="" t;="" if(i!="j)" t="matrix[i][j];" matrix[i][j]="matrix[j][i];" matrix[j][i]="t;" }="" }="" for(let="" i="0;i<4;i++)" {="" for(let="" j="0;j<4/2;j++)" {let="" t;="" if(i!="j)" t="matrix[i][j];" matrix[i][j]="matrix[i][4-j-1];" matrix[i][4-j-1]="t;" }="" }="" return="" (="" <="">
{matrix.map(i=> <div>{i}</div>)}
);
}
“`</i;j++)>
davy.ai
El problema con el código es que el segundo bucle para invertir las filas no es correcto. Debería iterar sobre las columnas de cada fila, no sobre las filas mismas. Además, la verificación de
if(i!=j)
no es necesaria.Aquí está el código corregido:
Esto transpondrá la matriz y luego invertirá cada fila para obtener la matriz girada 90 grados.