旋轉影象-leetcode
方法一: 先將矩陣轉化為轉置矩陣然後再將每一行反轉就可得到矩陣選轉九十度之後的矩陣
class Solution { public: void rotate(vector<vector<int>>& matrix) { int n = matrix.size(); for(int i=0;i<n;i++){ for(int j=i+1;j<n;j++){ swap(matrix[i][j],matrix[j][i]); } reverse(matrix[i].begin(),matrix[i].end()); } } };
方法二:將矩陣先沿著主對角線反轉,然後x軸翻轉
class Solution { public: void rotate(vector<vector<int>>& matrix) { int n = matrix.size(); for(int i=0;i<n-1;i++){ for(int j=0;j<n-i;j++){ swap(matrix[i][j],matrix[n-1-j][n-1-i]); } } for(int i=0;i<n/2;i++){ for(int j=0;j<n;j++){ swap(matrix[i][j],matrix[n-1-i][j]); } } } };