题解 | #螺旋矩阵#

螺旋矩阵

http://www.nowcoder.com/practice/7edf70f2d29c4b599693dc3aaeea1d31

class Solution {
public:
vector<int> spiralOrder(vector<vector<int> > &matrix) {
int m=matrix.size(),n=matrix[0].size();
if(m==0)
{
return {};
}
vector<int>ans;
int i=0,j=0;
bool flag=false;
while(m>0&&n>0){
for(;j<n;j++)
{
flag=true;
ans.push_back(matrix[i][j]);
}
if(flag)
{
i++;
j--;
}else{
break;
}
flag=false;
for(;i<m;i++)
{
flag=true;
ans.push_back(matrix[i][j]);
}
if(flag)
{
j--;
i--;
}else{
break;
}
flag=false;
int temp1=matrix[0].size()-n;
for(;j>=temp1;j--)
{
flag=true;
ans.push_back(matrix[i][j]);
}
if(flag)
{
i--;
j++;
}else{
break;
}
flag=false;
int temp2=matrix.size()-m;
for(;i>temp2;i--)
{
flag=true;
ans.push_back(matrix[i][j]);
}
if(flag)
{
j++;
i++;
}else{
break;
}
flag=false;
m-=1,n-=1;
}
return ans;
}
};</int></int></int>

全部评论

相关推荐

03-03 23:12
已编辑
北京邮电大学 Java
书海为家:我来给一点点小建议,因为毕竟还在学校不像工作几年的老鸟有丰富的项目经验,面试官在面试在校生的时候更关注咱们同学的做事逻辑和思路,所以最好在简历中描述下自己做过项目的完整过程,比如需求怎么来的,你对需求的解读,你想到的解决办法,遇到困难如何找人求助,最终项目做成了什么程度,你从中收获了哪些技能,你有什么感悟。
你的简历改到第几版了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务