알고리즘
[알고리즘] 2차원 배열 90도 회전 메서드 구현 (자바/java)
개발하는 지토
2020. 8. 31. 22:44
알고리즘 문제풀이를 하면서 가끔씩 사용되는 2차원 배열 90도 회전 메서드이다.
// 2차원 배열을 90도 회전하기
private static int[][] turn(int[][] key) {
int[][] ret = new int[key.length][key[0].length];
for(int i=0; i<ret.length; i++) {
for(int j=0; j<ret.length; j++) {
// 오른쪽으로 90도 회전
ret[i][j] = key[key.length-1-j][i];
}
}
return ret;
}
// 왼쪽으로 회전
private static int[][] rotate(int[][] arr) {
int tmp;
for(int s=0, e=arr.length-1; s<e; s++,e--) {
for(int i=s,j=e; i<e; i++,j--) {
tmp = arr[s][i];
arr[s][i] = arr[i][e];
arr[i][e] = arr[e][j];
arr[e][j] = arr[j][s];
arr[j][s] = tmp;
}
}
return arr;
}
기록용