力扣 48. 旋转图像

🔗 https://leetcode.cn/problems/rotate-image

题目

  • 给一个 n * n 的数组,返回顺时针旋转后的矩阵,要求 in-place,不能使用额外矩阵

思路

  • 明确几个要交换的元素坐标,(i, j) → (j, n - i -1) → (n - i - 1, n - j - 1) → (n - j -1, i) → (i, j) 完成替换即可
  • 明确要遍历的轮次,i 遍历到 n/2 即可,j 遍历 i → n - i - 1

代码

cpp 复制代码
class Solution {
public:
    void rotate(vector<vector<int>>& matrix) {
        int n = matrix.size();
        for (int i = 0; i < n/2; i++) {
            for (int j = i; j < n - i - 1; j++) {
                int tmp = matrix[i][j];
                //printf("--------- %d %d %d\n", i, j, matrix[i][j]);
                matrix[i][j] = matrix[n - j - 1][i];
                matrix[n - j - 1][i] = matrix[n - i - 1][n - j - 1];
                matrix[n - i - 1][n - j - 1] = matrix[j][n - i - 1];
                matrix[j][n - i - 1] = tmp;
            }
        }
    }
};
相关推荐
行走的陀螺仪2 分钟前
JavaScript 算法详解:10大经典算法,通俗易懂,从入门到精通
开发语言·javascript·算法
1368木林森12 分钟前
RAG查询改写②【第十篇】:HYDE、StepBack、子问题拆分,高阶改写算法生产落地
人工智能·算法·rag
smj2302_7968265220 分钟前
解决leetcode第3934题最短唯一子数组
数据结构·python·算法·leetcode
NashSKY25 分钟前
EPnP 算法详解
算法·矩阵分解·多视图几何·射影几何
小O的算法实验室25 分钟前
2026年SEVC,自适应模因算法+复杂约束条件下多无人机协同任务分配,深度解析+性能实测
算法·论文复现·智能算法·智能算法改进
iiiiyu30 分钟前
面向对象和集合编程题
java·开发语言·前端·数据结构·算法·编程语言
xiaoxiaoxiaolll31 分钟前
Light首次发表:动量空间穆勒矩阵偏振测量,破解纳米手性结构表征难题
人工智能·算法
变量未定义~32 分钟前
最长回文子串
数据结构·算法
代码中介商41 分钟前
AVL树:自平衡二叉搜索树的奥秘
数据结构
BirdenT1 小时前
20260518紫题训练
c++·算法