알고리즘 문제풀이를 하면서 가끔씩 사용되는 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;
}
기록용
'알고리즘' 카테고리의 다른 글
[알고리즘] 프로그래머스 큰 수 만들기(Level 2) [자바/JAVA] 풀이- 개발하는 지토 (0) | 2020.09.02 |
---|---|
[알고리즘] 프로그래머스 자물쇠와 열쇠(Level 2/2020 카카오 블라인드 채용 문제) [자바/JAVA] 풀이- 개발하는 지토 (0) | 2020.08.31 |
[알고리즘] 프로그래머스 문자열 압축(Level 2/2020 카카오 블라인드 채용 문제) [자바/JAVA] 풀이- 개발하는 지토 (0) | 2020.08.31 |
[알고리즘] 프로그래머스 스킬트리(Level 2) [자바/JAVA] 풀이- 개발하는 지토 (0) | 2020.08.15 |
[알고리즘] 프로그래머스 코딩테스트 고득점 kit - 해시 :: 위장 (Java) - 개발하는 지토 (0) | 2020.07.22 |
댓글