在Java中实现螺旋数组可以通过以下步骤进行:
1. 初始化一个二维数组。
2. 使用嵌套的循环结构,按照螺旋顺序填充数组。
3. 打印出填充好的数组。
public class SpiralArray {public static int[][] generateSpiralArray(int m, int n) {int[][] array = new int[m][n];int total = m * n;int layer = Math.min(m, n);int count = 1;int rowStart = 0, rowEnd = m - 1, colStart = 0, colEnd = n - 1;while (count <= total) {// 从左到右for (int i = colStart; i <= colEnd && count <= total; i++) {array[rowStart][i] = count++;}rowStart++;// 从上到下for (int i = rowStart; i <= rowEnd && count <= total; i++) {array[i][colEnd] = count++;}colEnd--;// 从右到左for (int i = colEnd; i >= colStart && count <= total; i--) {array[rowEnd][i] = count++;}rowEnd--;// 从下到上for (int i = rowEnd; i >= rowStart && count <= total; i--) {array[i][colStart] = count++;}colStart++;}return array;}public static void printArray(int[][] array) {for (int[] row : array) {for (int num : row) {System.out.print(num + " ");}System.out.println();}}public static void main(String[] args) {int m = 5, n = 5;int[][] spiralArray = generateSpiralArray(m, n);printArray(spiralArray);}}
这个代码定义了一个`SpiralArray`类,其中包含一个静态方法`generateSpiralArray`,用于生成一个给定大小的螺旋数组。`printArray`方法用于打印二维数组。在`main`方法中,我们生成了一个5x5的螺旋数组并打印出来。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://sigusoft.com/bj/81546.html