leetcode[59]Spiral Matrix II
2015-02-09 14:36
274 查看
Given an integer n, generate a square matrix filled with elements from 1 to n2 in spiral order.
For example,
Given n =
You should return the following matrix:
For example,
Given n =
3,
You should return the following matrix:
[ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, 5 ] ]
class Solution { public: void generate1(int icount, vector<vector<int>> &res, int left, int right, int up, int down) { /* if (icount==res.size()*res[0].size()) return; */ if (left>right||up>down) return; if (up==down) { for (int j=left;j<=right;j++) { icount++; res[up][j]=icount; } return; } if (left==right) { for (int i=up;i<=down;i++) { icount++; res[i][left]=icount; } return; } for (int j=left;j<right;j++) { icount++; res[up][j]=icount; } for (int i=up;i<down;i++) { icount++; res[i][right]=icount; } for (int j=right;j>left;j--) { icount++; res[down][j]=icount; } for(int i=down;i>up;i--) { icount++; res[i][left]=icount; } generate1(icount, res, left+1, right-1, up+1, down-1); } vector<vector<int> > generateMatrix(int n) { vector<vector<int>> res; if(n==0)return res; vector<int> temp; temp.insert(temp.end(),n,INT_MIN); res.insert(res.end(),n,temp); generate1(0,res,0,n-1,0,n-1); return res; } };
相关文章推荐
- (Java)LeetCode-59. Spiral Matrix II
- 【LEETCODE】59-Spiral Matrix II
- leetcode[59]Spiral Matrix II
- 个人记录-LeetCode 59. Spiral Matrix II
- 【leetcode】Array——Spiral MatrixII(59)
- Leetcode:59. Spiral Matrix II
- leetcode ----59. Spiral Matrix II
- leetcode——59——Spiral Matrix II
- leetcode-java-59. Spiral Matrix II
- [Leetcode] 59. Spiral Matrix II
- Leetcode 59. Spiral Matrix II
- 59. Spiral Matrix II Leetcode Python
- LeetCode-59-Spiral Matrix II(Array)-Medium
- Leetcode59 Spiral Matrix II
- LeetCode 59 - Spiral Matrix II
- leetcode 59:Spiral Matrix II
- leetcode 59. Spiral Matrix II
- leetcode-59 Spiral Matrix II
- leetcode 59. Spiral Matrix II
- Leetcode 59. Spiral Matrix II