顺时针打印矩阵
来源:互联网 发布:推荐淘宝上燕窝 编辑:程序博客网 时间:2024/06/05 00:14
输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10.
import java.util.ArrayList;public class Solution { public ArrayList<Integer> printMatrix(int [][] matrix) { if(matrix == null) return null; ArrayList<Integer> list = new ArrayList<>(); int row = matrix.length; int col = matrix[0].length; int left = 0, top = 0, right = col-1, bottom = row-1; while(left <= right && top <= bottom) { //从左到右 for(int i = left; i <= right; i++) { list.add(matrix[top][i]); } //从上到下 for(int j = top+1; j <= bottom; j++) { list.add(matrix[j][right]); } //从右到左 if(top != bottom) { for(int k = right-1; k >= left; k--) { list.add(matrix[bottom][k]); } } //从下到上 if(left != right) { for(int l = bottom-1; l > top; l--)//注意边界 { list.add(matrix[l][left]); } } //内圈 top++; left++; right--; bottom--; } return list; }}
0 0
- 顺时针打印矩阵
- 顺时针打印矩阵
- 顺时针打印矩阵
- 顺时针打印矩阵
- 顺时针打印矩阵
- 顺时针打印矩阵
- 顺时针打印矩阵
- 顺时针打印矩阵
- 顺时针打印矩阵
- 顺时针打印矩阵
- 矩阵顺时针打印
- 顺时针打印矩阵
- 顺时针打印矩阵[算法]
- 顺时针打印矩阵
- 顺时针打印矩阵
- 顺时针打印矩阵
- 顺时针打印矩阵
- 顺时针打印矩阵
- Typescript变量声明
- mongodb副本集
- 开源协议
- 窗口看门狗
- getFileDir() , getCacheDir()
- 顺时针打印矩阵
- Java static 修饰属性(类变量),修饰方法(类方法)
- Eclipse快捷键大全
- 视图控制器
- (第三季)106-vs插件resharper的下载安装和破解
- python中的三个读read(),readline()和readlines()
- SSL/TLS密钥协商(握手)过程
- 移植内核学习笔记1-----框架介绍及简单修改
- 华为Oj基础第六题 字符串加解密