leetcode48 旋转图像
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode48 旋转图像相关的知识,希望对你有一定的参考价值。
这道题只需要搞明白矩阵位置跳转逻辑即可,首选是反着赋值,只花费额外变量存储第一个值即可,然后弄清跳转过程。
class Solution { public: void rotate(vector<vector<int>>& matrix) { if(matrix.empty()&&matrix[0].empty()) { return; } int n=matrix.size(); int i; for(i=0;i<n/2;i++) { rot(matrix,i,i,n-1-i,n-1-i); } } void rot(vector<vector<int>>& matrix,int a,int b,int c,int d) { int i; for(i=0;i<d-b;i++) { int temp=matrix[a][b+i]; matrix[a][b+i]=matrix[c-i][b]; matrix[c-i][b]=matrix[c][d-i]; matrix[c][d-i]=matrix[a+i][d]; matrix[a+i][d]=temp; } } };
以上是关于leetcode48 旋转图像的主要内容,如果未能解决你的问题,请参考以下文章