leetcode系列-旋转图像

分类:array

难度:medium

给定一个 n × n 的二维矩阵表示一个图像。

将图像顺时针旋转 90 度。

说明:

你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。

题解

第一步,转置
第二步,将每一行逆转
时间复杂度O(N**2)

代码

class Solution(object):
    def rotate(self, matrix):
        """
        :type matrix: List[List[int]]
        :rtype: None Do not return anything, modify matrix in-place instead.
        """
        n = len(matrix)
        for i in range(n-1):
            for j in range(i+1,n):
                tmp = matrix[i][j]
                matrix[i][j] = matrix[j][i]
                matrix[j][i] = tmp
        
        for i in range(n):
            for j in range(n//2):
                matrix[i][j],matrix[i][n-j-1] = matrix[i][n-j-1] ,matrix[i][j]
        return matrix
发布了41 篇原创文章 · 获赞 0 · 访问量 6145

猜你喜欢

转载自blog.csdn.net/Yolo_C/article/details/105105460
今日推荐