[leetcode] Rotate Image javascript

김_리트리버·2020년 9월 17일
0

[알고리즘]

목록 보기
18/47
var rotate = function (matrix) {
  let queue = []

  for (let i of matrix) {
    for (let j of i) {
      queue.push(j)
    }
  }

  /* 
 규칙찾기 
 1 기존(0,0) => 변경(0,2)
 2 기존(0,1) => 변경(1,2)
 3 기존(0,2) => 변경(2,2)
=> 2는 그대로 0,1,2 변경 
 4 기존(1,0) => 변경(0,1)
 5 기존(1,1) => 변경(1,1)
 6 기존(1,2) => 변경(2,1)
=> 1는 그대로 0,1,2 변경 
 7 기존(2,0) => 변경(0,0)
 8 기존(2,1) => 변경(1,0)
 9 기존(2,2) => 변경(2,0)
 => 0는 그대로 0,1,2 변경 

 matrix 의 요소를 queue 에 넣어놓고 
 바깥 반복문을 2,1,0 으로 변화시키면서 
 안쪽 반복문을 0,1,2 로 변화시키며 
 queue 에 있는 요소로 matrix 의 요소를 덮어씌운다. 
 */

  for (let i = matrix.length - 1; i >= 0; i--) {
    for (let j = 0; j < matrix.length; j++) {
      matrix[j][i] = queue.shift()
    }
  }
}

profile
web-developer

0개의 댓글