leetcode 48. 旋转图像

题目如下

复制代码
观察交换规律我们可以看到,第一行第一个转移到的的最后一列的第一个。

即f(r,c) 转移到f(c,n - r - 1)
我们可以把r c赋值成(c,n - r - 1)可以发现一个位置走一圈总共有四个式子。
我们可以把第一个位置用t暂存随后逆推公式把后面的轮换上来。
cpp 复制代码
  temp = 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] = temp;

通过代码

cpp 复制代码
class Solution {
public:
    void rotate(vector<vector<int>>& matrix) {
        int n = matrix.size();
        int temp;
        for (int i = 0; i < n / 2; ++i) {
            for (int j = 0; j < (n + 1) / 2; ++j) {
                temp = 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] = temp;
            }
        }
    }
};
相关推荐
Christo325 分钟前
TSMC-1987《Convergence Theory for Fuzzy c-Means: Counterexamples and Repairs》
人工智能·算法·机器学习·kmeans
雷达学弱狗29 分钟前
广度优先搜索(BFS, Breadth-First Search)
数据结构·算法·宽度优先
AndrewHZ1 小时前
【游戏开发】街景风格化运用到游戏中,一般有哪些风格可供选择?
算法·游戏·风格迁移·手游·风格化·游戏街景·k帧
桦说编程2 小时前
数据丢失,而且不抛出并发异常,多线程使用HashMap踩坑
java·数据结构·后端
玉木子2 小时前
机器算法(五)模型选择与调优
人工智能·python·深度学习·算法·机器学习
会员果汁2 小时前
leetcode-每日一题-3025. 人员站位的方案数 I-C语言
c语言·算法·leetcode
闪电麦坤953 小时前
数据结构:选择排序 (Selection Sort)
数据结构·算法·排序算法
LaoZhangGong1233 小时前
MQTT报文的数据结构
c语言·网络·数据结构·mqtt·w5500
做科研的周师兄3 小时前
【机器学习入门】3.2 ALS算法——从评分矩阵到精准推荐的核心技术
人工智能·python·深度学习·线性代数·算法·机器学习·矩阵
胡萝卜3.04 小时前
【LeetCode&牛客&数据结构】单链表的应用
数据结构·学习·算法·leetcode·单链表