用Python旋转图像

假设我们有一个2D矩阵,代表一个图像。我们必须将该图像顺时针旋转90度。所以如果图像像

157
963
213

然后输出将是

291
165
337

为了解决这个问题,我们将遵循以下步骤-

  • 考虑temp_mat = [],col:=矩阵长度– 1

  • 对于0到矩阵长度的col

    • 在温度中添加matrix [row,col]

    • temp:= []

    • 用于矩阵范围长度内的行– 1到-1

    • 将temp添加到temp_mat

    • 对于范围从0到矩阵长度的i

      • 矩阵[i,j]:= temp_mat [i,j]

      • 对于范围从0到矩阵长度的j

    示例(Python)

    让我们看下面的实现以更好地理解-

    class Solution(object):
       def rotate(self, matrix):
          temp_matrix = []
          column = len(matrix)-1
          for column in range(len(matrix)):
             temp = []
             for row in range(len(matrix)-1,-1,-1):
                temp.append(matrix[row][column])
             temp_matrix.append(temp)
          for i in range(len(matrix)):
             for j in range(len(matrix)):
                matrix[i][j] = temp_matrix[i][j]
          return matrix
    ob1 = Solution()print(ob1.rotate([[1,5,7],[9,6,3],[2,1,3]]))

    输入项

    [[1,5,7],[9,6,3],[2,1,3]]

    输出结果

    [[2,9,1],[1,6,5],[3,3,7]]