算法實現
public static int k = 3;
public static void main(String[] args) {
int[] arr = {1, 2, 3, 4, 5, 6, 7, 8, 9};
int[] desc = new int[arr.length];
System.out.println("原數組內容");
print(arr);
for (int i = 0; i < arr.length; i++) {
int x = i / k;
int y = i % k;
desc[i] = arr[x + y * k];
}
System.out.println();
System.out.println("行列交換後數組內容內容");
print(desc);
}
public static void print(int[] arr) {
for (int i = 0; i < arr.length; i++) {
if (i > 0 && i % k == 0) {
System.out.println();
}
System.out.printf(arr[i] + "\t");
}
System.out.println();
}
程序輸出結果
原數組內容
1 2 3
4 5 6
7 8 9
行列交換後數組內容內容
1 4 7
2 5 8
3 6 9