[Java] 纯文本查看 复制代码 import java.util.Scanner;
/**
*
* @author AnCheng
*
*/
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int m = sc.nextInt();
int n = sc.nextInt();
int[][] arr = new int[m][n];
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
arr[i][j] = sc.nextInt();
}
}
sc.close();
spiralOrderPrint(arr);
}
public static void spiralOrderPrint(int[][] m) {
int r = 0;
int c = 0;
int tR = 0;
int tC = 0;
int dR = m.length - 1;
int dC = m[0].length - 1;
int n = m.length * m[0].length;
for (int count = 0; count < n; tR++, tC++, dR--, dC--) {
while (r < dR && count <= n) {
System.out.print(m[r++][c] + " ");
count++;
}
while (c < dC && count < n) {
System.out.print(m[r][c++] + " ");
count++;
}
while (r > tR && count < n) {
System.out.print(m[r--][c] + " ");
count++;
}
while (c > tC && count < n) {
System.out.print(m[r][c--] + " ");
count++;
}
c++;
r++;
}
}
}
|