(五)旋轉影像

每天進步_一丶丶發表於2020-11-11

題目描述:

給定一個 n × n 的二維矩陣表示一個影像。

將影像順時針旋轉 90 度。

說明:

你必須在原地旋轉影像,這意味著你需要直接修改輸入的二維矩陣。請不要使用另一個矩陣來旋轉影像。

示例 1:

示例 2:


class Solution {
    public void rotate(int[][] matrix) {
        //先轉置 
        //外層 起始條件:i = 0 退出條件:i < 矩陣長度
        //內層 起始條件:j = i 退出條件:j < 矩陣長度 
        for(int i = 0;i < matrix.length;i++)
            for(int j = i;j < matrix.length; j++){
                int temp = matrix[i][j];
                matrix[i][j] = matrix[j][i];
                matrix[j][i] = temp;
            }
        //後對摺
        //外層 起始條件:i = 0 退出條件:i < 矩陣長度
        //內層 起始條件:j = 0 退出條件:j < (矩陣長度/2) 
        for(int i = 0; i < matrix.length;i++)
            for(int j = 0;j < matrix.length/2;j++){
                int temp = matrix[i][j];
                matrix[i][j] = matrix[i][matrix.length-j-1];
                matrix[i][matrix.length-j-1] = temp; 
            }

    }
}

 

相關文章