最开始以为是一个方阵、、
结果可以是矩阵 不一定是方阵。。
import java.util.ArrayList; public class Solution { public ArrayList<Integer> printMatrix(int [][] matrix) { ArrayList<Integer> res = new ArrayList<Integer>(); int len = matrix.length; if(len == 0) return res; int l = 0, r = matrix[0].length - 1, t = 0, b = matrix.length - 1; while(l<=r){ for(int i=l; i<= r; i++) res.add(matrix[t][i]); // left to right if(++t > b) break; for(int i = t; i <= b; i++) res.add(matrix[i][r]); // top to bottom. if(l > --r) break; for(int i = r; i >= l; i--) res.add(matrix[b][i]); // right to left. if(t > --b) break; for(int i = b; i >= t; i--) res.add(matrix[i][l]); // bottom to top. if(++l > r) break; } return res; } }