码迷,mamicode.com
首页 > 其他好文 > 详细

顺时针打印矩阵

时间:2019-07-06 19:45:50      阅读:142      评论:0      收藏:0      [点我收藏+]

标签:inf   ret   for   public   while   打印矩阵   判断   col   顺时针   

技术图片

 1 class Solution {
 2 public:
 3     vector<int> printMatrix(vector<vector<int> > matrix) {
 4         vector<int> result;
 5         if(matrix.empty()) return result;
 6         int rows = matrix.size();
 7         int cols = matrix[0].size();
 8         //定义四个角标
 9         int left = 0;
10         int right = cols-1;
11         int top_row = 0;
12         int end_row = rows-1;
13         while(left<=right && top_row<=end_row){
14             //打印第一行
15             for(int i=left;i<=right;i++) result.push_back(matrix[top_row][i]);
16             //打印右边的列
17             //判断边界,如果只有一行的情况就不push了
18             if(top_row<end_row){
19                 for(int i=top_row+1;i<=end_row;i++) result.push_back(matrix[i][right]);
20             }
21             //打印最下面一行
22             //判断边界
23             if(left<right && top_row<end_row){
24                 for(int i=right-1;i>=left;i--) result.push_back(matrix[end_row][i]);
25             }
26             //打印左边一列
27             //判断边界
28             if(top_row+1<end_row && left<right){
29                 for(int i=end_row-1;i>=top_row+1;i--) result.push_back(matrix[i][left]);
30             }
31             left++;right--;top_row++;end_row--;
32         }
33         return result;
34     }
35 };

 

顺时针打印矩阵

标签:inf   ret   for   public   while   打印矩阵   判断   col   顺时针   

原文地址:https://www.cnblogs.com/pacino12134/p/11143730.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!