Java代码实现二维数组的排序,先对数组的全局数据进行从小到大的排序,然后对奇数行的数据进行反转,即按照从大到小的顺序再排序。
代码如下:
public class MatrixSort {
public static void main(String[] args) {
int [][]a = {
{2,37,34,51,6,7,38},{2,37,34,51,6,7,38},{2,37,34,51,6,7,38},
{12,33,14,25,6,7,13},{542,73,74,58,6,97,103},{432,43,44,65,26,27,32},{24,3,84,85,68,75,34}};
matSort(a);
//打印数组
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a[0].length; j++) {
System.out.print(a[i][j]);
System.out.print("\t");
}
System.out.println();
}
}
public static int[][] matSort(int [][] maxtrix){
int m = maxtrix.length;//获取行
int n = maxtrix[0].length;//获取列
//对整个数组排序
//采用冒泡排序的思想
int temp = 0;
for (int i = 0; i < m*n; i++) {
for (int j = 0; j < m*n-i-1; j++) {
//首先片段第j个元素是不是某一行的最后一个元素,如果是,则j+1为下一行的第一个元素
if (((j+1)%n)!&#