59. Spiral Matrix II
来源:互联网 发布:淘宝付了定金已下架 编辑:程序博客网 时间:2024/06/02 04:51
problem:
Given an integer n, generate a square matrix filled with elements from 1 to n2 in spiral order.
For example,
Given n = 3
,
[ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, 5 ]]按顺序编写即可,以每行的(i,i)为起点
class Solution {public: vector<vector<int>> generateMatrix(int n) { vector<vector<int>> result(n, vector<int>(n)); if(n == 0) return result; int layer = (n + 1) / 2; int initial_num = 1; for(int i=0; i<layer; i++) { //row i int first = initial_num; for(int j=i; j<n-i; j++) { result[i][j] = first + j - i; } //col n-i-1 first = result[i][n-i-1]; for(int j=i+1; j<n-i; j++) { result[j][n-i-1] = first + j - i; } //row n-i-1 first = result[n-i-1][n-i-1]; for(int j=n-i-1-1; j>=i; j--) { result[n-i-1][j] = first + n - i - 1 - j; } //col i first = result[n-1-i][i]; for(int j=n-i-1-1; j>i; j--) { result[j][i] = first + n - i - 1 - j; } initial_num += (n-i*2-1)*4; } return result; }};
0 0
- 59.Spiral Matrix II
- 59. Spiral Matrix II
- 59. Spiral Matrix II
- 59. Spiral Matrix II
- 59. Spiral Matrix II
- 59. Spiral Matrix II
- 59. Spiral Matrix II
- 59. Spiral Matrix II
- 59. Spiral Matrix II
- 59. Spiral Matrix II
- 59. Spiral Matrix II
- 59. Spiral Matrix II
- 59. Spiral Matrix II
- 59. Spiral Matrix II
- 59. Spiral Matrix II
- 59. Spiral Matrix II
- 59. Spiral Matrix II
- 59. Spiral Matrix II
- POJ 1163 C++:The Triangle
- 朴素贝叶斯
- 队列
- noip 2015 普及 第四题 推销员 stl之priority_queue
- 一个非常易懂Git教程
- 59. Spiral Matrix II
- C语言数学函数ceil(), floor(), round()
- LeetCode179—Largest Number
- CSS简单代码
- 2016-12-14-记事本第一天
- Security solution for TO C TO B
- 【流媒体|从入门到出家】:流媒体协议—HTTP
- 姓名首字母解析
- LeetCode 419. Battleships in a Board