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]   # 与下半部分翻转
                
相关推荐
INGNIGHT13 小时前
1584.连接所有点的最小费用(最小生成树&并查集union find)
c++·leetcode
wabs66613 小时前
关于二叉树【力扣144.二叉树的前序遍历的思考】
数据结构·c++·算法·leetcode·二叉树
Xin7701 天前
LeetCode 23.合并 K 个升序链表(分治递归)
leetcode
Nil2081 天前
leetcode 105从前序和中序遍历序列构造二叉树
算法·leetcode·职场和发展
Nil2081 天前
leetcode 114二叉树展开为链表
leetcode·链表·深度优先
cz07101 天前
hot100_搜索二维矩阵 II
算法·leetcode
圣保罗的大教堂1 天前
leetcode 3718. 缺失的最小倍数 简单
leetcode
青 春 记 忆1 天前
LeetCode 234. 回文链表|Python 解法详解
python·leetcode·链表
啊嘞嘞?1 天前
力扣(LRU缓存)
算法·leetcode
啊嘞嘞?1 天前
力扣(下一个排列)
算法·leetcode