/** 顺时针旋转* 先从上到下,再交换* 1 2 3     7 8 9     7 4 1* 4 5 6  => 4 5 6  => 8 5 2* 7 8 9     1 2 3     9 6 3
*/
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]);}
}/** 逆时针旋转* 先从左到右, 再交换* 1 2 3     3 2 1     3 6 9* 4 5 6  => 6 5 4  => 2 5 8* 7 8 9     9 8 7     1 4 7
*/
void anti_rotate(vector<vector<int> > &matrix) {for (auto &vi : matrix) reverse(vi.begin(), vi.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]);}
}

说明:

for (auto &c : s)   
     c = toupper(c);  //toupper,是一种计算机用语,用来将字符c转换为大写英文字母

相当于

for (auto it = s.begin(); it != s.end(); ++it){
    auto &c = *it;
    c = toupper(c);
}

c++二维矩阵顺时针和逆时针旋转相关推荐

  1. Python 矩阵顺时针,逆时针旋转

    Python 矩阵顺时针,逆时针旋转 matrix = [[0,1,2,3],[4,5,6,7],[8,9,10,11]] matrix1 = [list(i)[::-1] for i in reve ...

  2. 雅可比旋转求解对称二维矩阵的特征值和特征向量

    问题描述: 给定一个矩阵,如下: A=[a11a21a12a22] A=\begin{bmatrix} a_{11}&a_{12}\\ a_{21}& a_{22} \end{bmat ...

  3. 算法学习之实现二维矩阵的顺时针遍历

    背景 有这么一道面试题,让顺时针输出一个二维矩阵. 思路 记录开始行开始列和结束行结束列,做为输出的边界 除了要输出的矩阵,我还设置了一个状态矩阵,用来记录矩阵中某一个元素输出与否,没有输出过的元素, ...

  4. matlab不用循环,三维矩阵按横切页(垂直于纸面且)向右展开为2维,即(i,j,:)展开。将二维矩阵每行顺序不变依次向左复制,如:(a,b,c)复制为(a,a,a,b,b,b,c,c,c)

    概述:将将二维矩阵每行顺序不变依次向左复制和三维矩阵按横切页(垂直于纸面且)向右展开为2维其中的主要计算方法一致,所以放在一起说明.复制的主要要点是将二维矩阵扩展为三维>>>展开三维 ...

  5. 利用Turbo C进行平面二维图形的平移,旋转,缩放,对称

    [实验内容] 以矩阵运算为数学基础,采用旋转.平移.缩放.对称等基本几何变换,对一简单的二维图形做变换. [实验步骤] 1. 编写二维图形基本变换(包括旋转.平移.缩放.对称)的通用子程序: 2. 以 ...

  6. LeetCode 07: T48. 旋转图像 (中等); T54. 螺旋矩阵(中等); T240. 搜索二维矩阵 II (中等)

    文章目录 T19: 48. 旋转图像 (中等) 思路 解法 1: 新增数组 解法 2: 原地旋转 T20: 54. 螺旋矩阵(中等) 思路 解法: 到边界换方向 T21: 240. 搜索二维矩阵 II ...

  7. matlab 把图像变成二维的,matlab图像怎么变成二维矩阵

    求:matlab二维直方图图像分割程序.. 我给你个网站``里面的教学很详细~~希望能帮到你~~~~反正里面的软件教程很多``就是不知道有没你要找的``如果有~~给我加分哈``http://tech. ...

  8. 基于二维矩阵的FFT计算原理

    FFT算法是信号处理领域最基本.最经典的算法,在工程实践中用处十分广泛,但是在一些对FFT点数要求较大或者计算FFT实时性要求较高的场合,按常规方式直接计算FFT难以满足工程实际的要求.本文针对长点数 ...

  9. WebGL 理论基础 - 二维矩阵

    此文上接一系列文章,先从基础概念开始,上一篇是物体缩放. 之前的三篇文章讲了如何对二维物体进行平移,旋转,和 缩放.每种变换都改变了着色器并且这些变换还受先后顺序影响.在前例中我们先缩放,再旋转,最后 ...

最新文章

  1. html 多项选择,选项标签中的HTML多字段选择
  2. java如何绘制图表_java绘制excel图表(jxcell)
  3. 二十年后我发明了保姆机器人作文_我想发明保姆机器人作文700字
  4. 关于UI自动化测试元素定位细节记录
  5. 手写自己的MyBatis框架-V2.0配置文件
  6. tensorboard运行
  7. Source Insight使用技巧
  8. OpenCv学习笔记(二)—cv Mat学习
  9. vue-cli4.x 中 配置允许跨域请求
  10. java对mysql读写权限设置_Java学习笔记——MySQL开放3306接口与设置用户权限
  11. MATLAB学习笔记(九)
  12. 条件锁pthread_cond_t
  13. SpringMVC中的Controller默认单例
  14. java orientation_Java WritableCellFormat.setOrientation方法代码示例
  15. iso27001信息安全体系认证意义
  16. 使用Postman进行get、put、post端口测试
  17. 微信java版s40_塞班微信S40版下载
  18. Linux 上安装Realtek瑞昱网卡驱动
  19. [一步一步MVC]第四回:漫谈ActionLink,有时“胡搅蛮缠”
  20. ubuntu下使用docker进行深度学习环境配置(从入门到精通)

热门文章

  1. Qt开发之路59---QPushButton的pressed,released,clicked,toggled响应的区别
  2. react-native引入react-native-vector-icons
  3. 制作自己的matlab图注颜色
  4. SpringBoot整合Drools
  5. sql中把字符串类型转化
  6. CF 1606E Arena
  7. 修复计算机用户名密码,win7恢复出厂设置后用户名密码是多少
  8. git 命令带用户名密码
  9. typecho小程序双鱼2.5版本更新说明
  10. 文心一言对于宣传文案理解