顺时针打印矩阵
来源:互联网 发布:网络节点是什么意思 编辑:程序博客网 时间:2024/05/18 11:46
输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下矩阵:1 2 3 45 6 7 89 10 11 1213 14 15 16则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10.
class
Solution {
public
:
vector<
int
> printMatrix(vector<vector<
int
> > matrix) {
vector<
int
> ans;
int
row=matrix.size();
int
col=matrix[
0
].size();
if
(row==
0
|| col==
0
)
return
ans;
int
top=
0
,left=
0
,right=col-
1
,bottom=row-
1
;
while
(left<=right && top<=bottom)
{
for
(
int
j=left;j<=right;++j)
ans.push_back(matrix[top][j]);
for
(
int
i=top+
1
;i<=bottom;++i)
ans.push_back(matrix[i][right]);
if
(top!=bottom)
for
(
int
j=right-
1
;j>=left;--j)
ans.push_back(matrix[bottom][j]);
if
(left!=right)
for
(
int
i=bottom-
1
;i>top;--i)
ans.push_back(matrix[i][left]);
left++,right--,top++,bottom--;
}
return
ans;
}
};
0 0
- 顺时针打印矩阵
- 顺时针打印矩阵
- 顺时针打印矩阵
- 顺时针打印矩阵
- 顺时针打印矩阵
- 顺时针打印矩阵
- 顺时针打印矩阵
- 顺时针打印矩阵
- 顺时针打印矩阵
- 顺时针打印矩阵
- 矩阵顺时针打印
- 顺时针打印矩阵
- 顺时针打印矩阵[算法]
- 顺时针打印矩阵
- 顺时针打印矩阵
- 顺时针打印矩阵
- 顺时针打印矩阵
- 顺时针打印矩阵
- 包含min函数的栈
- c语言初级阶段知识整理(一)
- Unity3D游戏场景优化之批处理
- GCC主要数据结构之infile
- 字符串切割
- 顺时针打印矩阵
- 塔防大战unity5.5版本系列(part6)
- C语言_心得总结_1
- 你的密码安全吗?
- C++ 标准模板库
- HDU-1004-Let the Balloon Rise
- 主线程和子线程均循环10次,两者交替运行50次
- 1016:部分A+B
- 深挖unity的资源管理