多维数组排序(蛇)

时间:2013-05-10 13:24:09

标签: java sorting

我可以在谷歌找到答案,所以也许你可以给我一些建议。

任务是:

  1. 使用随机数字创建多维数组 - 完成;
  2. 排序多维数组 - 完成;
  3. 排序多维数组(蛇形) - 未完成;
  4. 所以,例如:

    我们有: 排序数组:

    • [5] [2] [4]
    • [1] [3] [6]
    • [9] [7] [8]

    我们如何以蛇型对其进行排序:

    • [1] [2] [3]
    • [4] [5] [6]
    • [7] [8] [9]

    有一个包含两个完成任务的代码:

    public class Snake {
    
    public static void main(String[] args) {
    
    int line = 3;
    int column = 3;
    
    new Snake().sort(line, column);
    
    }
    
    Random rnd;
    
    public void sort(int line, int column) {
    rnd = new Random();
    int temp = 0;
    int[][] arr = new int[line][column];
    System.out.println("Unsorted array:");
    for (int i = 0; i < line; i++) {
        for (int j = 0; j < column; j++) {
        arr[i][j] = rnd.nextInt(50) + 1;
        System.out.print("[" + arr[i][j] + "]");
    
        }
        System.out.println();
    }
    
    for (int i = 0; i < line; i++) {
        for (int j = 0; j < column; j++) {
        for (int k = 0; k < column - 1; k++) {
            if (arr[j][k] > arr[j][k + 1]) {
            temp = arr[j][k];
            arr[j][k] = arr[j][k + 1];
            arr[j][k + 1] = temp;
            }
        }
        }
    }
    
    System.out.println("Sorted array:");
    for (int i = 0; i < line; i++) {
        for (int j = 0; j < column; j++) {
        System.out.print("[" + arr[i][j] + "]");
        }
        System.out.println();
    
    }
    
    }
    

    }