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/

相关推荐
tachibana28 分钟前
与其他语言相比,使用 Go 有什么好处?
开发语言·后端·golang·go
阿俊-全栈开发4 小时前
LikeShop 单商户SaaS商城分销模块二开:佣金计算与结算逻辑实现
java·开发语言·微服务·likeshop·likeshop开源商城·likeshop多商户
ychqsq7 小时前
201.春风
经验分享·职场和发展
小蒋学算法8 小时前
算法-交替删除操作后最后剩下的整数-跟着灵茶山艾府学算法
数据结构·算法
m0_380743878 小时前
C++中的freopen的用法实例详解
开发语言·c++
荆棘鸟智能8 小时前
林业遥感长势评估怎么做?从NDVI时序分析到LiDAR蓄积量回归
人工智能·算法·智慧林业
Escalating_xu8 小时前
【Python】基础语法(1):常量、变量、类型、输入输出与运算符
开发语言·python
jimy18 小时前
polymorph.cpp里面的“析构函数、智能指针”问题
开发语言·c++
m0_380743878 小时前
PHP 8.3 缓存清除不生效怎么排查
开发语言·php
hhb_6189 小时前
AIRAGDebug:一键定位RAG链路异常
人工智能·python·算法