Rust 力扣 - 48. 旋转图像

文章目录

题目描述

题解思路

我们可以将原矩阵进行水平翻转,然后在沿主对角线进行翻转,就能完成原矩阵沿顺时针方向旋转90o的变换

题解代码

rust 复制代码
impl Solution {
    pub fn rotate(matrix: &mut Vec<Vec<i32>>) {
        let n = matrix.len();
        
        // 水平翻转
        for i in 0..(n >> 1) {
            for j in 0..n {
                (matrix[i][j], matrix[n - 1 - i][j]) = (matrix[n - 1 - i][j], matrix[i][j]);
            }
        }

        // 主对角线翻转
        for i in 1..n {
            for j in 0..i {
                (matrix[i][j], matrix[j][i]) = (matrix[j][i], matrix[i][j]);
            }
        }
    }
}

题解链接

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

相关推荐
田野追逐星光9 分钟前
STL的容器vector的模拟实现
开发语言·c++
半壶清水29 分钟前
[软考网规考点笔记]-操作系统核心知识及历年真题解析
网络·网络协议·算法
爱编码的傅同学30 分钟前
【常见锁的概念】死锁的产生与避免
java·开发语言
Tansmjs42 分钟前
实时数据可视化库
开发语言·c++·算法
WBluuue1 小时前
Codeforces 1075 Div2(ABC1C2D1D2)
c++·算法
圣保罗的大教堂1 小时前
leetcode 3650. 边反转的最小路径总成本 中等
leetcode
我什么都学不会1 小时前
Python练习作业3
开发语言·python
2401_838472511 小时前
C++模拟器开发实践
开发语言·c++·算法
初九之潜龙勿用1 小时前
C# 操作Word模拟解析HTML标记之背景色
开发语言·c#·word·.net·office
froginwe111 小时前
MySQL UNION 操作详解
开发语言