54. Spiral Matrix
来源:互联网 发布:战地2优化太差 编辑:程序博客网 时间:2024/06/01 09:59
这道题是说给一个矩阵,把矩阵中的数以螺旋型输出来。
这个题一开始我想用递归做,定义一个方向,但是因为没有注意到每一行或者每一列遍历完了之后,矩阵边界都会变,没有注意这个,所以错了。看了别人的代码,解决这个方法是定义四个边界,随时调整。
class Solution {public: vector<int> spiralOrder(vector<vector<int>>& matrix) { vector<int> ret; if(matrix.empty()) return ret; int row = matrix.size(); int col = matrix[0].size(); int rowBegin = 0; int rowEnd = row - 1; int colBegin = 0; int colEnd = col - 1; while(rowBegin <= rowEnd && colBegin <= colEnd){ for(int j = colBegin; j <= colEnd; ++j){ ret.push_back(matrix[rowBegin][j]); } rowBegin++; for(int i = rowBegin; i <= rowEnd; ++i){ ret.push_back(matrix[i][colEnd]); } colEnd--; if(rowBegin <= rowEnd){ for(int j = colEnd; j >= colBegin; --j){ ret.push_back(matrix[rowEnd][j]); } } rowEnd--; if(colBegin <= colEnd){ for(int i = rowEnd; i >= rowBegin; --i){ ret.push_back(matrix[i][colBegin]); } } colBegin++; } return ret; }};
阅读全文
0 0
- 54. Spiral Matrix && 59. Spiral Matrix II
- 59. Spiral Matrix II && 54. Spiral Matrix
- LeetCode 54. Spiral Matrix
- [LeetCode]54.Spiral Matrix
- LeetCode --- 54. Spiral Matrix
- [Leetcode] 54. Spiral Matrix
- [leetcode] 54.Spiral Matrix
- 54. Spiral Matrix
- Leetcode-54.Spiral Matrix
- **LeetCode 54. Spiral Matrix
- Leetcode 54. Spiral Matrix
- [leetcode] 54. Spiral Matrix
- 54. Spiral Matrix
- leetcode 54. Spiral Matrix
- 54. Spiral Matrix LeetCode
- 54. Spiral Matrix
- 54. Spiral Matrix
- leetcode 54. Spiral Matrix
- Shell---Shell常用命令(tr、sed、cut)
- MySQL 5.6 (Win7 64位)下载、安装与配置图文教程
- JSR(Java内存模型)常见问题解答
- PhotonServer MMO游戏开发
- hdu 3790 迪杰斯特拉变形题
- 54. Spiral Matrix
- 人生中最重要的财富,不是时间也不是金钱,是...
- 一些非常有用的 VSCode 扩展
- 节约 Web 开发时间的 67 个工具、库和资源
- 2017 GMIC+全球移动互联网青岛峰会暨中国传媒融合发展年会即将震撼来袭!
- Java学习--简单java语法
- 【数据结构】基本术语与概念
- 网络故障上不了网
- 最长连续递增子序列