力扣热题100_矩阵_48_旋转图像

文章目录


题目链接

48.旋转图像

给定一个 n × n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。

你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。

示例 1:

输入:matrix = [[1,2,3],[4,5,6],[7,8,9]]

输出:[[7,4,1],[8,5,2],[9,6,3]]

示例 2:

输入:matrix = [[5,1,9,11],[2,4,8,10],[13,3,6,7],[15,14,12,16]]

输出:[[15,13,2,5],[14,3,4,1],[12,6,8,9],[16,7,10,11]]

解题思路

1.初始化n,计算matrix矩阵长度

2.水平翻转(先判断列数,再往下循环行数)

3.对角线翻转

解题代码

python 复制代码
class Solution:
    def rotate(self, matrix: List[List[int]]) -> None:
        n = len(matrix)
        for i in range(n // 2):
            for j in range(n):
                matrix[i][j], matrix[n-i-1][j] = matrix[n-i-1][j], matrix[i][j]

        for i in range(n):
            for j in range(i):
                matrix[i][j], matrix[j][i] = matrix[j][i], matrix[i][j]
        return matrix
相关推荐
TracyCoder1238 小时前
LeetCode Hot100(15/100)——54. 螺旋矩阵
算法·leetcode·矩阵
u0109272719 小时前
C++中的策略模式变体
开发语言·c++·算法
2501_941837269 小时前
停车场车辆检测与识别系统-YOLOv26算法改进与应用分析
算法·yolo
探序基因10 小时前
单细胞Seurat数据结构修改分群信息
数据结构
六义义11 小时前
java基础十二
java·数据结构·算法
四维碎片11 小时前
QSettings + INI 笔记
笔记·qt·算法
Tansmjs11 小时前
C++与GPU计算(CUDA)
开发语言·c++·算法
独自破碎E11 小时前
【优先级队列】主持人调度(二)
算法
weixin_4454766812 小时前
leetCode每日一题——边反转的最小成本
算法·leetcode·职场和发展
打工的小王12 小时前
LeetCode Hot100(一)二分查找
算法·leetcode·职场和发展