Buenas, tengo una matriz cuadrada creada con el siguiente metodo
Código:
/**
* Crea la matriz con un tamaño que se le pasa por teclado
*
* @param int tamaño size
*/
public void crearMatriz(int size)
{
if(size>0 && size <= MAX_SIZE)
this.size=size;
{
matriz = new int[size][size];
for(int i=0; i<size; i++) {
for(int j=0; j<size; j++) { // recorro la matriz
Random r = new Random(); // para generar aleatoriamente
matriz[i][j] = r.nextInt(50+1); // relleno aleatoriamente
}
}
}
}
Con el cual especificamos el tamaño y rellenamos la matriz con numero aletorios del 0 al 50.
Lo que trato de hacer ahora es un metodo que lo que haga el girar la matriz hacia la derecha, os pongo un ejemplo visual:
Matriz1:
1 2 3
4 5 6
7 8 9
---> Metodo girar 90º derecha
Matriz1:
7 4 1
8 5 2
9 6 3
El problema es que no consigo hacerlo funcionar, probe a cambiar filas por columnas con una auxiliar (matrizAux[i][j] = matriz[j][i];) pero haciendo esto el elemento 1,1 siempre es el mismo y no me lo gira bien...
¿Se os ocurre como poder hacerlo?
Muchisimas gracias!