方法一:先上下反转,然后再对角线反转
var rotate = function(matrix) {
if(matrix.length===1)return matrix;
let len = matrix.length;
let half = Math.floor(matrix.length/2);
for(let i=0;i<half;i++){
[matrix[i],matrix[len-1-i]] = [matrix[len-1-i],matrix[i]];
}
for(let i=0;i<len;i++){
for(let j=0;j<=i;j++){
[matrix[i][j],matrix[j][i]] = [matrix[j][i],matrix[i][j]];
}
}
// console.log(matrix);
return matrix;
};
方法二:旋转图形
var rotate = function(matrix) {
let len = matrix.length;
for(var i=0;i<len/2;i++){
for(var j=i;j<len-1-i;j++){
let temp = matrix[i][j];
matrix[i][j] = matrix[len-1-j][i];
matrix[len-1-j][i] = matrix[len-1-i][len-1-j];
matrix[len-1-i][len-1-j] = matrix[j][len-1-i];
matrix[j][len-1-i] = temp;
}
}
return matrix;
};