/**
* @author shkstart
* @create 2021-12-27-9:59
*/
public class Test1227 {
public static void main(String[] args){
int a = 10;
int i = 0,j = 0;
int current = 1;
int[][] arr = new int[a][a];
Boolean up = false,down = false,left = false, right = true;
while (current <= a * a){
if(up == true){
while (i >= 0 && arr[i][j] == 0){
arr[i][j] = current++;
if(i > 0 && arr[i-1][j] == 0)i--;
}
up = false;
right = true;
j++;
}
if(down == true){
while (arr[i][j] == 0 && i < a){
arr[i][j] = current++;
if(i < a - 1 && arr[i+1][j] == 0)i++;
}
down = false;
left = true;
j--;
}
if(left == true){
while (j >= 0 && arr[i][j] == 0){
arr[i][j] = current++;
if(j > 0 && arr[i][j-1] == 0)j--;
}
left = false;
up = true;
i--;
}
if(right == true){
while (j < a && arr[i][j] == 0){
arr[i][j] = current++;
if(j < a - 1 && arr[i][j+1] == 0)j++;
}
right = false;
down = true;
i++;
}
}
for(int q = 0; q < a;q++){
for(int w = 0;w < a;w++){
System.out.print(arr[q][w]);
}
System.out.println();
}
}
}
【无标题】Java解螺旋排序问题
最新推荐文章于 2024-06-14 11:19:00 发布