首页 > 其他 > 详细

LeetCode 48

时间:2018-09-24 15:21:48      阅读:140      评论:0      收藏:0      [点我收藏+]

这种方法首先对原数组取其转置矩阵,然后把每行的数字翻转可得到结果,如下所示(其中蓝色数字表示翻转轴):

1  2  3       1  4  7       7  4  1

4  5  6  -->   2  5  8   -->     8  5  2  

7  8  9       3  6  9          9  6  3

class Solution {
public:
    void rotate(vector<vector<int>>& matrix) {
        for(int i=0;i < matrix[0].size();i++){
            for(int j=i+1;j < matrix[0].size();j++){
                swap(matrix[i][j],matrix[j][i]);
            }
            reverse(matrix[i].begin(),matrix[i].end());
        }
    }
};

_很好的数学思想,不是单纯的蛮力旋转

LeetCode 48

原文:https://www.cnblogs.com/cunyusup/p/9695537.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!