spiral-matrix
通建安
2023-12-01
import java.util.*;
public class Solution {
public ArrayList<Integer> spiralOrder(int[][] matrix) {
ArrayList<Integer>jieguo = new ArrayList<Integer>();
int x=0;
int y=0;
int X_MAX=matrix.length-1;
if(matrix.length-1<0)
{
return jieguo;
}
int Y_MAX=matrix[0].length-1;
while(x<=X_MAX&&y<=Y_MAX)
{
for(int i= y;i<=Y_MAX;i++)
{
jieguo.add(matrix[x][i]);
}
for(int j=x+1;j<=X_MAX;j++)
{
jieguo.add(matrix[j][Y_MAX]);
}
if(x!=X_MAX)
{
for(int k=Y_MAX-1;k>=y;k--)
{
jieguo.add(matrix[X_MAX][k]);
}
}
if(y!=Y_MAX)
{
for(int l=X_MAX-1;l>x;l--)
{
jieguo.add(matrix[l][x]);
}
}
x++;y++;X_MAX--;Y_MAX--;
}
return jieguo;
}
}