문제: 한바퀴 돌리기 (90도)
일단 n n 행렬이니까 대칭 시켜주고 각 행을 reverse 시켜준다.
const rotate = function(matrix) {
let n = matrix.length;
for (let i = 0 ; i < n; i ++) {
for (let j = i ; j < n ; j++) {
let temp = matrix[i][j]
matrix[i][j] = matrix[j][i]
matrix[j][i] = temp
}
}
for (let i = 0 ;i < n ; i++) {
matrix[i].reverse()
}
return matrix
};
reverse 가 싫으면 하나하나 바꿀 수도 있을 것 같다.
for(let i = 0; i< n; i++){
for(let j = 0; j<(n/2); j++){
let temp = matrix[i][j]
matrix[i][j] = matrix[i][n-1-j]
matrix[i][n-1-j] = temp
}
}
'알고리즘 > 리트코드' 카테고리의 다른 글
53. Maximum Subarray (0) | 2022.04.05 |
---|---|
187. Repeated DNA Sequences (0) | 2022.04.03 |
127. Word Ladder (0) | 2022.03.31 |
136. Single Number (0) | 2022.03.31 |
49. Group Anagrams (0) | 2022.03.28 |