public class MyClass {
static void print_matrix(int[][] matrix) {
for (int i = 0; i < matrix.length; i++) {
for (int j = 0; j < matrix.length; j++)
System.out.printf("%2d ", matrix[i][j]);
System.out.println();
}
System.out.println();
}
static void rotate_matrix_90_degrees_right(int[][] matrix) {
int len = matrix.length;
for (int i = 0; i < len / 2; i++) {
for (int j = i; j < len - i - 1; j++) {
int tmp = matrix[i][j];
matrix[i][j] = matrix[len - 1 - j][i];
matrix[len - 1 - j][i] = matrix[len - 1 - i][len - 1 - j];
matrix[len - 1 - i][len - 1 - j] = matrix[j][len - 1 - i];
matrix[j][len - 1 - i] = tmp;
}
}
}
public static void main(String args[]) {
int matrix[][] =
{
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
rotate_matrix_90_degrees_right(matrix);
print_matrix(matrix);
}
}
/*
run:
7 4 1
8 5 2
9 6 3
*/