48. Rotate Image

1.問題

2.想法

  • 提問

    • 確認題意: 將輸入的兩個字串轉為數字相乘並返回對應的字串

  • function header, parameter

  • test input

  • 說明想法

    • 可以將旋轉看成4個點的交換位置, 而且只要用1/4的點為即可

  • 測試計算複雜度

3.程式碼

class Solution {
public:
    void rotate(vector<vector<int>>& matrix) {
        int size = matrix.size();
        for (int c = 0; c < size / 2; c++) {
            for (int r = c; r < size - 1 - c; r++) {
                int tmp = matrix[r][c];
                matrix[r][c] = matrix[size - 1 - c][r];
                matrix[size - 1 - c][r] = matrix[size - 1 - r][size - 1 - c];
                matrix[size - 1 - r][size - 1 - c] = matrix[c][size - 1 - r];
                matrix[c][size - 1 - r] = tmp;
            }
        }
    }
};

Last updated