当前位置: 首页 > news >正文

欢乐力扣:旋转图像

文章目录

  • 1、题目描述
  • 2、 思路
  • 3、代码


1、题目描述

 旋转图像,给定一个 n × n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。

2、 思路

要将一个矩阵顺时针旋转 90 度,分两步:

  1. 水平翻转:将矩阵上下行进行交换。
  2. 斜对角旋转:沿着主对角线(左上到右下)交换元素。

3、代码

class Solution:
    def rotate(self, matrix: List[List[int]]) -> None:
        """
        Do not return anything, modify matrix in-place instead.
        """
        # 水平翻转
        n = len(matrix)
        for i in range(n//2):
            for j in range(n):
                matrix[n-i-1][j], matrix[i][j]  = matrix[i][j], matrix[n-i-1][j]
        # 斜对角旋转
        for i in range(len(matrix)):
            for j in range(i):
                matrix[j][i], matrix[i][j] = matrix[i][j], matrix[j][i]
        return matrix 
http://www.dtcms.com/a/22626.html

相关文章:

  • 16-使用QtChart创建动态图表:入门指南
  • Docker+DockerCompose+Harbor安装
  • 【问题记录】Windows使用gRPC通信问题
  • 【Linux】动静态库的制作与原理
  • vue学习笔记
  • 如何做好项目变更管理
  • Linux定时静默执行桌面/前台程序
  • windows Redis Insight 如何查看宝塔docker里的redis数据
  • DIC技术用于混凝土泵车臂架三维姿态与振动测量
  • 怎么把pyqt界面做的像web一样漂亮
  • Windsurf Wave 3发布:MCP协议、更多模型支持等重要功能解析
  • RIP路由协议的知识要点
  • Python Django 入门教程
  • 【开源向量数据库】Milvus简介
  • LabVIEW 中的 3dgraph.llb 库
  • 重生之我在异世界学编程之C语言:深入预处理篇(上)
  • PHP 数据库操作:以 MySQL 为例
  • 【Python】实现文件移动与文件夹删除工具
  • MySQL 查询缓存技术深度解析
  • container::erase
  • 推荐几款较好的开源成熟框架
  • Day4 25/2/17 MON
  • TCP/IP参考模型之区别(Differences Between the OSI and TCP/IP Reference Models)
  • C++Linux进阶项目分析-仿写Redis之Qedis
  • C++ list:链表的“乐高积木”与“灵活小火车”
  • vue3项目实践心得-多次渲染同一svg + 理解v-if、transition、dom加载之间的顺序
  • 面向企业的采购ERP管理系统
  • 【HF设计模式】07-适配器模式 外观模式
  • kong API Key 认证插件详解
  • java连接redis