博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[LeetCode] Spiral Matrix II
阅读量:6139 次
发布时间:2019-06-21

本文共 1193 字,大约阅读时间需要 3 分钟。

The idea is just to generate the matrix in the spiral order. First the up-most row (u), then the right-most column (r), then the down-most row (d), and finally the left-most column (l). After generating a row or a column, update the corresponding variable to continue the generation.

The code is as follows.

1 class Solution { 2 public: 3     vector
> generateMatrix(int n) { 4 vector
> mat(n, vector
(n)); 5 int u = 0, d = n - 1, l = 0, r = n - 1, num = 1; 6 while(true) { 7 // up 8 for(int col = l; col <= r; col++) mat[u][col] = num++; 9 if(++u > d) break;10 // right11 for(int row = u; row <= d; row++) mat[row][r] = num++;12 if(--r < l) break;13 // down14 for(int col = r; col >= l; col--) mat[d][col] = num++;15 if(--d < u) break;16 // left17 for(int row = d; row >= u; row--) mat[row][l] = num++;18 if(++l > r) break;19 }20 return mat;21 }22 };

 

转载于:https://www.cnblogs.com/jcliBlogger/p/4719936.html

你可能感兴趣的文章
DEV实现日期时间效果
查看>>
java注解【转】
查看>>
Oracle表分区
查看>>
centos 下安装g++
查看>>
嵌入式,代码调试----GDB扫盲
查看>>
类斐波那契数列的奇妙性质
查看>>
配置设置[Django]引入模版之后报错Requested setting TEMPLATE_DEBUG, but settings are not configured....
查看>>
下一步工作分配
查看>>
Response. AppendHeader使用大全及文件下载.net函数使用注意点(转载)
查看>>
Wait Functions
查看>>
代码描述10313 - Pay the Price
查看>>
jQuery最佳实践
查看>>
centos64i386下apache 403没有权限访问。
查看>>
vb sendmessage 详解1
查看>>
jquery用法大全
查看>>
PC-BSD 9.2 发布,基于 FreeBSD 9.2
查看>>
网卡驱动程序之框架(一)
查看>>
css斜线
查看>>
Windows phone 8 学习笔记(3) 通信
查看>>
重新想象 Windows 8 Store Apps (18) - 绘图: Shape, Path, Stroke, Brush
查看>>