Leetcode算法学习日志-48 Rotate Image
来源:互联网 发布:周小平扒皮网络大v 编辑:程序博客网 时间:2024/06/06 14:15
Leetcode 48 Rotate Image
题目原文
You are given an n x n 2D matrix representing an image.
Rotate the image by 90 degrees (clockwise).
Note:
You have to rotate the image in-place, which means you have to modify the input 2D matrix directly.DO NOT allocate another 2D matrix and do the rotation.
Example 1:
Given input matrix = [ [1,2,3], [4,5,6], [7,8,9]],rotate the input matrix in-place such that it becomes:[ [7,4,1], [8,5,2], [9,6,3]]
题意分析
将一个方阵表示的图像向顺时针旋转90度,方法中不能使用额外的方阵空间,也就是旋转需要在原址操作。
解法分析
本题解法比较巧妙,对一个方阵,如果需要顺时针旋转90度,只需要先将所有的行反向排列,再对新的方阵做一次转置。如果是逆时针旋转,则是将所有行反向排列。C++代码如下:
class Solution {public: void rotate(vector<vector<int>>& matrix) { reverse(matrix.begin(),matrix.end()); for(int i=0;i<matrix.size();i++){ for(int j=i+1;j<matrix[i].size();j++) swap(matrix[i][j],matrix[j][i]); } }};
转置操作用swap进行,注意对角线上的元素不用操作。阅读全文
0 0
- Leetcode算法学习日志-48 Rotate Image
- [leetcode 48] Rotate Image
- [LeetCode 48]Rotate Image
- leetcode || 48、Rotate Image
- leetcode-48 Rotate Image
- Rotate Image - LeetCode 48
- Leetcode 48: Rotate Image
- Leetcode #48 Rotate Image
- LeetCode(48) Rotate Image
- leetcode 48: Rotate Image
- Leetcode#48||Rotate Image
- leetcode 48:Rotate Image
- 【leetcode】【48】Rotate Image
- Leetcode 48 - Rotate Image
- LeetCode 48 - Rotate Image
- 【LeetCode-48】Rotate Image
- LeetCode 48 Rotate Image
- Leetcode 48 Rotate Image
- C# TcpClient网络编程传输文件(带文件名)(必须看)
- opengl编程glsl-纹理
- Ajax跨域请求COOKIE无法带上的解决办法
- python 错误总结
- C语言中常用计时方法总结
- Leetcode算法学习日志-48 Rotate Image
- 数据结构第十周项目——验证算法(三)
- Sqlplus,设置 不换行,列宽,隐藏标题
- iOS
- 曼彻斯特编码
- vue之watch用法
- 实现ajax的队列请求
- 第12周【项目
- DOM的innerHTML