zoukankan      html  css  js  c++  java
  • leetcode刷题-48旋转图像

    题目

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

    将图像顺时针旋转 90 度。

    思路

    没有想到。看过解答后知道可以转置加翻转即可,且能达到最优的时间复杂度O(N^2)

    实现

    class Solution:
        def rotate(self, matrix: List[List[int]]) -> None:
            """
            Do not return anything, modify matrix in-place instead.
            """
            n  = len(matrix)
            def reverse(matrix: List[List[int]]):
                for i in range(n):
                    for j in range(i, n):
                        matrix[i][j], matrix[j][i] = matrix[j][i], matrix[i][j]
            
            def exchange(matrix: List[List[int]]):
                for i in range(n):
                    for j in range(int(n/2)):
                        matrix[i][j], matrix[i][n - j - 1] = matrix[i][n - j - 1], matrix[i][j]
            
            reverse(matrix)
            exchange(matrix)
  • 相关阅读:
    机器视觉
    视觉感知
    计算机视觉
    模板匹配
    Kinect
    手势识别
    三维重建
    单元化理解
    [面试经] Java
    [面试经]Java中final、finally、finalize有什么不同?
  • 原文地址:https://www.cnblogs.com/mgdzy/p/13425059.html
Copyright © 2011-2022 走看看