本文格式为Word版,下载可任意编辑 System.out.println(); for(int i=a.length-1; i>=0; i--){ System.out.print(a[i]+\) ; } /** System.out.println(); * @param args l_sort2(a); */ for(int i=0; iSystem.out.print(a[i]+\) ; static int a[] = {12 ,24 ,32, 28,25 ,60 ,48, 9, 15} ; } public static void main(String[] args) { System.out.println(); for(int i=0; iSystem.out.print(a[i]+\) ; l_sort(a); } for(int i=0; iSystem.out.print(a[i]+\) ; System.out.println(); } Arrays.sort(a) ;//对数组进行排序 System.out.println(); for(int i=0; iSystem.out.print(a[i]+\) ; String bitData =1111010101010010101 ; } 魏 第 1 页 共 3 页 一道面试题:对一个数组进行排序,要求第一个最大、第二个最小 本文格式为Word版,下载可任意编辑 formatInt(bitData); } public static void l_sort(int a[]){//对排序好的.数组进行两边弹出 Arrays.sort(a) ; LinkedList b = new LinkedList(); for(int i=0; ib.add(a[i]) ; } boolean flag = true ; for(int i=0 ;iif(flag){ a[i] = (Integer)b.removeLast() ; }else{ a[i] = (Integer)b.removeFirst() ; } flag = !flag ; } } public static void l_sort2(int a[]){//用的另一种方法实现 boolean flag = true ; for(int i=0 ;iif(flag){ for(int j=a.length-1 ;j>i ;j--){ if(a[j]>a[j-1]){ int team = a[j] ; a[j] = a[j-1] ; a[j-1] =team ; } } }else{ 魏 第 2 页 共 3 页 本文格式为Word版,下载可任意编辑 for(int j=a.length-1 ;j>i ;j--){ if(a[j]<=a[j-1]){ int team = a[j] ; a[j] = a[j-1] ; a[j-1] =team ; } } } flag = !flag ; } } 下面的方法是我额外做的一个0、1字符转换成十进制 //二进制数转换成十进制数 public static void formatInt(String bitData){ double intData = 0 ; for(int i=0 ;i