leetcode hot100 48.旋转图像 矩阵转置

本质是矩阵转置90°

其实就是

  • 先沿「水平轴」翻转(上下翻转)
  • 再沿「左上 → 右下轴」翻转(主对角线翻转)

例如:

python 复制代码
[[1, 2],
 [3, 4]]     

先沿「水平轴」翻转(上下翻转)

python 复制代码
[[3, 4],
 [1, 2]] 

再沿「左上 → 右下轴」翻转(主对角线翻转)

python 复制代码
[[3, 1],
 [4, 2]]
python 复制代码
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):
            matrix[i], matrix[n - 1 - i] = matrix[n - 1 - i], matrix[i]
        
        # 沿「左上 → 右下轴」翻转(主对角线翻转)
        for i in range(n):
            for j in range(i + 1, n):    # 只取上半部分
                matrix[i][j], matrix[j][i] = matrix[j][i], matrix[i][j]   # 与下半部分翻转
                
相关推荐
洛水水5 小时前
【力扣100题】18.随机链表的复制
算法·leetcode·链表
he___H12 小时前
接雨水----解
leetcode
洛水水14 小时前
【力扣100题】23. 螺旋矩阵
算法·leetcode·矩阵
Tisfy16 小时前
LeetCode 2553.分割数组中数字的数位:模拟(maybe+翻转)——java也O(1)
java·数学·算法·leetcode·题解·模拟·取模
Controller-Inversion17 小时前
42. 接雨水
数据结构·算法·leetcode
Controller-Inversion17 小时前
33. 搜索旋转排序数组
数据结构·算法·leetcode
驼同学.17 小时前
【求职季】LeetCode Hot 100 渐进式扫盲手册(Python版)
python·算法·leetcode
宵时待雨17 小时前
优选算法专题6:模拟
数据结构·c++·算法·leetcode·职场和发展
Liangwei Lin17 小时前
LeetCode 35. 搜索插入位置
数据结构·算法·leetcode
洛水水18 小时前
【力扣100题】22. 矩阵置零
算法·leetcode·矩阵