-
选择排序
public void ChoP(int[] a) //选择排序 { int lens = a.length; int temp; for(int i=0;i<lens;i++) for(int j=i+1;j<lens;j++) { if(a[i]>a[j])//和剩下的比较 { temp=a[i]; a[i]=a[j]; a[j]=temp; } } }选择排序就是一个个的比较,选择剩下之中最小的一个排在前面。
-
冒泡排序
public void MoO(int[] a)//冒泡排序 { int lens = a.length; int temp; for(int i=0;i<lens;i++) for(int j=0;j<lens-i-1;j++) { if(a[j]>a[j+1])//相邻比较 { temp=a[j]; a[j]=a[j+1]; a[j+1]=temp; } } }冒泡排序就是每两个比较(相邻两个),数值大的往下沉,也就是小的往上升
-
插入排序
public void direct(int[] a) { int lens=a.length; int flag; for(int i=1;i<lens;i++){ //插入a[i] flag=a[i]; //插入元素的值 int j=i-1; //a[i]前一个的值 while(j>=0 && a[j]>a[i]){ //比最后一项小则执行 a[j+1]=a[j]; //元素后移 j--; } a[j+1]=flag; } }插入排序,意思就是在已排好的数组中,插入一个数后还是排好序的。从后往前比较,比它大的就继续往后挪一位,在比它小的后一位或者到最前面的时候停下插入。