Skip to content

Commit f9fe681

Browse files
author
freemanzhang
committed
refactor code with a different method
1 parent 890d76a commit f9fe681

File tree

1 file changed

+9
-19
lines changed

1 file changed

+9
-19
lines changed

src/math/rotateImage.java

Lines changed: 9 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -11,29 +11,19 @@
1111

1212
public class rotateImage
1313
{
14+
// matrix[i][j] = matrix[n-1-j][i]
1415
public void rotate( int[][] matrix )
1516
{
16-
// transpose the image
17-
for ( int i = 0; i < matrix.length; i++ )
17+
int n = matrix.length;
18+
for ( int i = 0; i < n / 2; i++ )
1819
{
19-
for ( int j = i; j < matrix[0].length; j++ )
20+
for ( int j = 0; j < Math.ceil( ( ( double ) n ) / 2. ); j++ )
2021
{
21-
int temp = 0;
22-
temp = matrix[i][j];
23-
matrix[i][j] = matrix[j][i];
24-
matrix[j][i] = temp;
25-
}
26-
}
27-
28-
// flip horizontally
29-
for ( int i = 0; i < matrix.length; i++ )
30-
{
31-
for ( int j = 0; j < matrix.length / 2; j++ )
32-
{
33-
int temp = 0;
34-
temp = matrix[i][j];
35-
matrix[i][j] = matrix[i][matrix.length - 1 - j];
36-
matrix[i][matrix.length - 1 - j] = temp;
22+
int temp = matrix[i][j];
23+
matrix[i][j] = matrix[n - 1 - j][i];
24+
matrix[n - 1 - j][i] = matrix[n - 1 - i][n - 1 - j];
25+
matrix[n - 1 - i][n - 1 - j] = matrix[j][n - 1 - i];
26+
matrix[j][n - 1 - i] = temp;
3727
}
3828
}
3929
}

0 commit comments

Comments
 (0)