两次翻转,注意col是从row+1开始,不然每次翻转,又回到原数组
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
var rotate = function (matrix) { const n = matrix.length; for (let row = 0; row < n; row++) { for (let col = row + 1; col < n; col++) { let temp = matrix[row][col]; matrix[row][col] = matrix[col][row]; matrix[col][row] = temp; } } for (let row = 0; row < n; row++) { matrix[row].reverse(); } return matrix; };
|