当前位置: 首页 > news >正文

48. 旋转图像

题目介绍

给定一个 n × n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 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]]

提示:

  • n == matrix.length == matrix[i].length
  • 1 <= n <= 20
  • -1000 <= matrix[i][j] <= 1000

解答

class Solution {
public:void rotate(vector<vector<int>>& matrix) {// 先上下交换元素,后对角交换int size = matrix.size();int i = 0, j = size - 1;while(i < j){vector<int> temp = matrix[i];matrix[i] = matrix[j];matrix[j] = temp;i++; j--;}// 对角交换for(int i = 0; i < size; ++i){for(int j = i + 1; j < size; ++j){int temp = matrix[i][j];matrix[i][j] = matrix[j][i];matrix[j][i] = temp;}}}
};
http://www.lryc.cn/news/98003.html

相关文章:

  • “深入解析Spring Boot:从入门到精通的完整指南“
  • 【C++】C++11——包装器
  • 插件使用权限管理软件(三)WebAPI项目IIS部署
  • [算法很美打卡] 多维数组篇 (打卡第二天)
  • K8S初级入门系列之十一-安全
  • 【雕爷学编程】MicroPython动手做(02)——尝试搭建K210开发板的IDE环境6
  • “深入解析Spring Boot:从入门到精通“
  • [自然语言处理] 自然语言处理库spaCy使用指北
  • 【新日语(2)】第6課 拓哉もさしみを食べたがってします
  • uni-app 经验分享,从入门到离职(一)——初始 uni-app,快速上手(文末送书福利1.0)
  • Python爬虫实例之淘宝商品页面爬取(api接口)
  • 并发编程 | CompletionService - 如何优雅地处理批量异步任务
  • 医学案例|ROC曲线之面积对比
  • Kotlin线程的基本用法
  • 2.03 PageHelper分页工具
  • VUE中使用ElementUI组件的单选按钮el-radio-button实现第二点击时取消选择的功能
  • 瓴羊Quick BI:可视化大屏界面设计满足企业个性需求
  • 617. 合并二叉树
  • 【T1】存货成本异常、数量为零金额不为零的处理方法。
  • EtherNet IP转PROFINET网关连接西门子与欧姆龙方法
  • 低代码开发重要工具:jvs-flow(流程引擎)审批功能配置说明
  • [SQL挖掘机] - GROUP BY语句
  • 【ubuntu|内核】ubuntu 22.04修改内核为指定版本
  • Carla教程一:动力学模型到LQR
  • IDE/mingw下动态库(.dll和.a文件)的生成和部署使用(对比MSVC下.dll和.lib)
  • 点击加号添加新的输入框
  • SQL AND OR 运算符
  • 6、C++内存模型
  • 上海市青少年算法2023年1月月赛(丙组)
  • 移动开发之Wifi列表获取功能