48. Rotate Image (Medium) - TengnanYao/daily_leetcode GitHub Wiki

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 // 2):
            for j in range(n - 1 - 2 * i):
                matrix[i][i + j], matrix[i + j][n - 1 - i], matrix[n - 1 - i][n - 1 - i - j], matrix[n - 1 - i - j][i] = matrix[n - 1 - i - j][i], matrix[i][i + j], matrix[i + j][n - 1 - i], matrix[n - 1 - i][n - 1 - i - j]
                
        # # transpose + mirror
        # n = len(matrix)
        # for i in range(n - 1):
        #     for j in range(n - 1 - i):
        #         matrix[i][i + j + 1], matrix[i + j + 1][i] = matrix[i + j + 1][i], matrix[i][i + j + 1]
        # for i in range(n):
        #     for j in range(n // 2):
        #         matrix[i][j], matrix[i][n - 1 - j] = matrix[i][n - 1 - j], matrix[i][j]