• 题目描述:把一个二维数组顺时针旋转90度;

  • 思路:

  1. 对于数组每一圈进行旋转,使用m控制圈数;
  2. 每一圈的四个元素顺时针替换,可以直接使用Python的解包,使用k控制每一圈的具体元素;
class Solution(object):
    def rotate(self, matrix):
        """
        :type matrix: List[List[int]]
        :rtype: void Do not return anything, modify matrix in-place instead.
        """
        n = len(matrix)
        m = 0
        while m <= n / 2:
            k = m
            while k < n - 1 - m:
                matrix[m][k], matrix[k][n-1-m], matrix[n-1-m][n-1-k], matrix[n-1-k][m] = \
                    matrix[n-1-k][m], matrix[m][k], matrix[k][n-1-m], matrix[n-1-m][n-1-k]
                k += 1
            m += 1

相关文章:

  • 2021-10-20
  • 2022-01-04
  • 2021-04-02
  • 2021-09-06
  • 2022-12-23
  • 2021-05-16
猜你喜欢
  • 2022-01-05
  • 2021-09-27
  • 2022-01-01
  • 2021-11-19
  • 2021-10-30
  • 2022-02-16
  • 2021-06-30
相关资源
相似解决方案