2020-04-07(面试题 01.07. 旋转矩阵**)

难度 中等
实际上这道题算是比较简单的,关键在于题目要求不占用额外空间。开始以为是指不新增任何变量,想了好一会没想出来解决方案,于是硬着头皮上我认为空间度最小的方法,结果通过了,时间空间都是100。不占用额外空间原来是指空间复杂度o(1)就可以了。

public void rotate(int[][] matrix) {
        for(int i = 0; i < matrix.length; i++){
            for(int j = i; j >= 0; j--){
                if(i != j){
                    int temp = matrix[i][j];
                    matrix[i][j] = matrix[j][i];
                    matrix[j][i] = temp;
                }
            }
        }
        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-1-j];
                matrix[i][matrix.length-1-j] = temp;
            }
        }
    }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容