给定一个 n × n 的二维矩阵表示一个图像。

将图像顺时针旋转 90 度。

说明:

你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。

示例 1:

给定 matrix = 
[
  [1,2,3],
  [4,5,6],
  [7,8,9]
],

原地旋转输入矩阵,使其变为:
[
  [7,4,1],
  [8,5,2],
  [9,6,3]
]
示例 2:

给定 matrix =
[
  [ 5, 1, 9,11],
  [ 2, 4, 8,10],
  [13, 3, 6, 7],
  [15,14,12,16]
],

原地旋转输入矩阵,使其变为:
[
  [15,13, 2, 5],
  [14, 3, 4, 1],
  [12, 6, 8, 9],
  [16, 7,10,11]
]

 思路:对图像处理比较熟悉的同学这道题就比较easy了,很容易想到 右旋=沿左斜对角线transpose+上下翻转(左旋=沿右斜对角线transpose+上下翻转)

class Solution {
public:void rotate(vector<vector<int>>& matrix) {int num = matrix.size();//沿着左斜对角线,做transposefor(int i=0;i<num;++i){for(int j=0;j<num-i;++j){int temp = matrix[i][j];matrix[i][j] = matrix[num-j-1][num-i-1];matrix[num-j-1][num-i-1] = temp;}}//上下翻转for(int i=0;i<num/2;++i){for(int j=0;j<num;++j){int temp = matrix[i][j];matrix[i][j] = matrix[num-i-1][j];matrix[num-i-1][j] = temp;}}}
};

旋转图像—leetcode48相关推荐

  1. 剑指offer第2版Python题解(更新中)

    O(n^2)排序 冒泡排序.插入排序与选择排序(Python)_NLP_victor的博客-CSDN博客 归并 归并排序(Python)_NLP_victor的博客-CSDN博客 快排 快速排序(Py ...

  2. leetcode48. 旋转图像

    给定一个 n × n 的二维矩阵表示一个图像. 将图像顺时针旋转 90 度. 说明: 你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵.请不要使用另一个矩阵来旋转图像. 示例 1: 给定 m ...

  3. [Swift]LeetCode48. 旋转图像 | Rotate Image

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ ➤微信公众号:山青咏芝(shanqingyongzhi) ➤博客园地址:山青咏芝(https://www.cnblog ...

  4. Python旋转图像到特定的角度(Rotate Image to a specific degree)

    Python旋转图像到特定的角度(Rotate Image to a specific degree) 目录 Python旋转图像到特定的角度(Rotate Image to a specific d ...

  5. LeetCode-笔记-48.旋转图像

    LeetCode-笔记-48.旋转图像 1.本人思路 通过观察发现,就是将列数组从下往上组合形成一个新数组,插入到分别的行中. 因此循环次数为matrix.size(): 因此代码思路如下: clas ...

  6. PIL图像处理:旋转图像

    PIL图像处理:旋转图像 旋转包括 transpose() 和 rotate() 两种方式. import matplotlib.pyplot as plt from PIL import Image ...

  7. 算法--------旋转图像

    给定一个 n × n 的二维矩阵表示一个图像.将图像顺时针旋转 90 度.说明:你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵.请不要使用另一个矩阵来旋转图像.示例 1:给定 matrix ...

  8. Leetcode 48. 旋转图像 (每日一题 20210813)

    给定一个 n × n 的二维矩阵 matrix 表示一个图像.请你将图像顺时针旋转 90 度.你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵.请不要 使用另一个矩阵来旋转图像.示例 1 ...

  9. python 旋转图像

    给定一个 n × n 的二维矩阵 matrix 表示一个图像.请你将图像顺时针旋转 90 度. 你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵.请不要 使用另一个矩阵来旋转图像. 输入 ...

最新文章

  1. linux mono
  2. “躲避球”体育游戏《Sparc》登陆Rift和Vive,可以和PS用户一起玩了【附游戏视频】
  3. OVS DPDK--介绍(二)
  4. springCloud的注册中心Eureka和Zookeper的区别
  5. opencv 训练人脸对比_【项目案例python与人脸识别】基于OpenCV开源计算机视觉库的人脸识别之python实现...
  6. 滋润万物的173dmba
  7. sqlserver无法连接到服务器的常见原因和解决办法
  8. php 递归函数 示例,php递归使用示例(php递归函数)_PHP
  9. VSTO打包加载项 WPS可用 Advanced Installer
  10. python anacoda更换国内镜像源和常用软件包管理操作详细讲解(已爬坑)
  11. 签署您的应用——多渠道签名打包教程
  12. 毕业论文-word中自动生成中英文双目录(TC域,支持更新不覆盖)
  13. 学生静态网页设计作品之我的家乡
  14. 《Say As You Wish: Fine-grained Control of Image Caption Generation with Abstract Scene Graphs》阅读笔记
  15. 起底身份倒卖产业:那些被公开叫卖的人生
  16. mencoder MPlayer 参数详细
  17. JDK8安装时错误1335的解决
  18. 工作日志之Sonar扫描错误处理-Sonar扫描结果入库 java.sql.BatchUpdateException: Incorrect string value: '\xF3\xA3\xAC\xB
  19. SQL Server中修改表的前缀
  20. [停更] 微信平台上的DRL [停更]

热门文章

  1. 经典面试题:链表的相交与环问题
  2. VMware与Centos7系统安装
  3. Vue(二十一)使用express模拟接口数据
  4. angular的自定义指令---详解
  5. python3-字典中的一些常用方法
  6. JAVA序列化和反序列化
  7. mysql accountlevel1_mysql---修改表结构
  8. C# 系统应用之调用SDelete程序粉碎文件及基础原理知识
  9. 【数据结构与算法】之深入解析“分割回文串II”的求解思路与算法示例
  10. 143. Reorder List 重排链表