Categorías
Algorithms

LeetCode – Rotar imagen (Java)

Se le proporciona una matriz 2D nxn que representa una imagen.

Gire la imagen 90 grados (en el sentido de las agujas del reloj).

Seguimiento:
¿Podrías hacer esto en el lugar?

Solución in situ

Usando la relación «matriz[i][j] = matriz[n-1-j][i]», podemos recorrer la matriz.

public void rotate(int[][] matrix) {
	int n = matrix.length;
	for (int i = 0; i < n / 2; i++) {
		for (int j = 0; j < Math.ceil(((double) n) / 2.); j++) {
			int temp = matrix[i][j];
			matrix[i][j] = matrix[n-1-j][i];
			matrix[n-1-j][i] = matrix[n-1-i][n-1-j];
			matrix[n-1-i][n-1-j] = matrix[j][n-1-i];
			matrix[j][n-1-i] = temp;
		}
	}
}

  LeetCode - Profundidad mínima del árbol binario (Java)

Por Programación.Click

Más de 20 años programando en diferentes lenguajes de programación. Apasionado del code clean y el terminar lo que se empieza. ¿Programamos de verdad?

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *