11、数组的冒泡排序 2 3public void bubbleSort(int a[]) { 4 5 int n = a.length; 6 7 for (int i = 0; i < n - 1; i++) { 8 9 for (int j = 0; j < n - 1; j++) { 10 11 if (a[j] > a[j + 1]) { 12 13 int temp = a[j]; 14 15 a[j] = a[j + 1]; 16 17 a[j + 1] = temp; 18 19 } 20 21 } 22 23 } 24 25}
2、数组的选择排序
1public void selectSort(int a[]) { 2 3 for (int n = a.length; n > 1; n--) { 4 5 int i = max(a, n); 6 7 int temp = a[i]; 8 9 a[i] = a[n - 1]; 10 11 a[n - 1] = temp; 12 13 } 14 15}
3、数组的插入排序
1public void insertSort(int a[]) { 2 3 int n = a.length; 4 5 for (int i = 1; i < n; i++) { //将a[i]插入a[0:i-1] 6 7 int t = a[i]; 8 9 int j; 10 11 for (j = i - 1; j >= 0 && t < a[j]; j--) { 12 13 a[j + 1] = a[j]; 14 15 } 16 17 a[j + 1] = t; 18 19 } 20 21}
4、设置两层循环
1for(int i=0;i<arrayOfInts.length;i++) 2 3{ 4 5 for(int j=i+1;j<arrayOfInts.length;j++) 6 7 { 8 9 if(arrayOfInts[i]>arrayOfInts[j]) 10 11 { 12 13 a=arrayOfInts[i]; 14 15 arrayOfInts[i]=arrayOfInts[j]; 16 17 arrayOfInts[j]=a; 18 19 } 20 21 } 22 23}
5、还有一种方法就是用Arrays.sort()方法:
1//导入包 2 3import java.util.Arrays; 4 5 6 7public class Two3{ 8 9 10 11 public static void main(String[]args) 12 13 { 14 15 int[]arrayOfInts={32,87,3,589,12,7076,2000,8,622,127}; 16 17 18 19 Arrays.sort(arrayOfInts); 20 21 22 23 for(int i=0;i<arrayOfInts.length-1;i++) 24 25 { 26 27 System.out.print(arrayOfInts[i]+" "); 28 29 } 30 31 } 32 33}
小示例:
1Array stuInfo = Array.CrateInstance(typeOf(Student),5); 2 3Array stuScore = Array.CreateInstance(typeOf(double),5); 4 5Array.Sort(stuScore,stuInfo); 6 7Array.Reverse(stuInfo);