public static int[][] dyadicArraySort(int a[][]){ int temp=0;int sum =0;int nn=0; for(int i=0;i<a.length;i++){ sum=sum+a[i].length; } int n[]=new int[sum]; for(int i=0;i<a.length;i++){ for(int j=0;j<a[i].length;j++){ n[nn]=a[i][j];nn=nn+1;//被赋值的应该放在前面 } } for(int i=1;i<=sum-1;i++){ for(int j=0;j<=sum-1-i;j++){ if(n[j]>n[j+1]){ temp=n[j+1]; n[j+1]=n[j]; n[j]=temp; } } }int h=0;for(int i=0;i<a.length;i++){ for(int j=0;j<a[i].length;j++){ //不能再for循环里添加int h=0;否则每次循环都会重新定义h=0; a[i][j]=n[h];h++; } } return a; } public static void main(String[] args) { int a[][]={{5,1,9,3,4,7,7},{8,4,9,6,2},{52}}; for(int i=0;i<a.length;i++){ System.out.print("{ "); for(int j=0;j<a[i].length;j++){ System.out.print(dyadicArraySort(a)[i][j]+" "); }System.out.print("}");System.out.println(); } // TODO 自动生成的方法存根 }
时间: 2024-10-12 08:47:24