Spiral Matrix 矩阵的旋转输出
2015-04-11 17:05
477 查看
Spiral Matrix
Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix in spiral order.For example,
Given the following matrix:
[ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ] ]
You should return
[1,2,3,6,9,8,7,4,5].
class Solution { public: vector<int> spiralOrder(vector<vector<int> > &matrix) { vector<int> res; if(matrix.size()==0) return res; int x1,y1,x2,y2,i; x1=y1=0; x2=matrix.size()-1; y2=matrix[0].size()-1; while(x1<=x2&&y1<=y2) { for(i=y1;i<=y2;i++) res.push_back(matrix[x1][i]); for(i=x1+1;i<=x2;i++) res.push_back(matrix[i][y2]); if(x2!=x1) for(i=y2-1;i>=y1;i--) res.push_back(matrix[x2][i]); if(y2!=y1) for(i=x2-1;i>x1;i--) res.push_back(matrix[i][y1]); x1++;x2--; y1++;y2--; } return res; } };
相关文章推荐
- Spiral Matrix:旋转打印矩阵
- [LeetCode] Spiral Matrix 旋转打印矩阵
- [LeetCode] Spiral Matrix 螺旋输出矩阵
- [C++]LeetCode: 110 Spiral Matrix (螺旋输出矩阵元素)
- Spiral Matrix II 矩阵的旋转输出
- Leet Code 54 Spiral Matrix - 螺旋输出矩阵 - Java
- leetcode 54 54. Spiral Matrix(矩阵顺时针绕圈输出)
- LeetCode - 54/59 - Spiral Matrix(旋转打印数组)
- CC150 1.7 ROTATE MATRIX 旋转矩阵
- Array-----59. Spiral Matrix II(蛇形打印矩阵)
- Array-----54. Spiral Matrix(蛇形填矩阵)
- 【PAT】B. Spiral Matrix (25) 1050. 螺旋矩阵(25)
- [LeetCode]-Spiral Matrix I&II 螺旋矩阵
- 将n*n矩阵顺时针旋转90度输出
- LeetCode—*Spiral Matrix问题,主要是用到了方向矩阵,很创意
- JAVA代码—算法基础:将N*N的矩阵顺时针旋转90度输出元素
- asp.net中利用Matrix矩阵来旋转文字
- LeetCode------54. Spiral Matrix(螺旋二维矩阵)-----59. Spiral Matrix II(n的螺旋矩阵)
- Android 绘图基础:Bitmap(位图)与Matrix(矩阵)实现图片5种操作(平移、旋转、错切、缩放、对称)
- 矩阵螺旋遍历Spiral Matrix,Spiral Matrix2