资源描述:
《排序java实现》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、排序的java实现:Java代码1.import java.util.*; 2.public class BubbleSort{ 3.public void sort(int[] a){ 4.for(int i=0;i 5.for(int j=a.length-1;j>=i+1;j--){ 6.if(a[j] 7.int tmp =a[j]; 8.a[j]=a[j-1]; 9.a[j-1]=tmp; 10.} 11.} 12.} 13.} 14.public static vo
2、id main(String[] args){ 15.int[] a = {1,6,3,8,1,56,}; 16.BubbleSort bs = new BubbleSort(); 17.bs.sort(a); 18.System.out.println(Arrays.toString(a)); 19.} 20.} 21. 22.2 InsertSort 23.import java.util.*; 24.public class InsertSort{ 25.private in
3、t i=0; 26.public void sort(int[] a){ 27.for(int j=1;j 28.int keys = a[j]; 29.i =j-1; 30.while(i>=0&&a[i]>keys){ 31.a[i+1]=a[i]; 32.i--; 33.} 34.a[i+1]=keys; 35.} 36.} 1.public static void main(String[] args){ 2.InsertSort i = new InsertSort(
4、); 3.int[] f={5,2,4,6,1,3,0}; 4.i.sort(f); 5.System.out.println(Arrays.toString(f)); 6.} 7.} 8.3 MergeSort 9.import java.util.*; 10.public class MergeSortTest{ 11.private int[] l,r1; 12.public void merge(int[] a,int p,int q,int r){ 13.int n1 =
5、q-p+1; 14.int n2 = r-q; 15.l=new int[n1]; 16.r1 = new int[n2+1]; 17.for(int i=0;i 18.l[i]=a[p+i]; 19.} 20.l[n1-1]=Integer.MAX_VALUE; 21.for(int i=0;i 22.r1[i]=a[q+i]; 23.} 24.r1[n2] =Integer.MAX_VALUE; 25.int i=0; 26.int j=0; 27.for(int k=p
6、;k 28.if(l[i]<=r1[j]){ 29.a[k]=l[i]; 30.i=i+1; 31.}else{ 32.a[k]=r1[j]; 33.j=j+1; 34.} 35.} 36.} 37.public void mergeSort(int[] a,int p,int r){ 38.if(p+1 39.int q=(p+r)/2; 40.mergeSort(a,p,q); 41.mergeSort(a,q,r); 42.merge(a,p,q,r); 43.}
7、 44.} 1.public static void main(String[] args){ 2.int[] a1 = {3,41,52,26,38,57,9,49}; 3.MergeSortTest mst =new MergeSortTest(); 4.mst.mergeSort(a1,0,a1.length); 5.System.out.println(Arrays.toString(a1)); 6.} 7.} 8.4 SelectionSort 9.import java
8、.util.*; 10.public class MergeSortTest{ 11.private int[] l,r1; 12.public void merge(int[] a,int p,int q,int r){ 13.int n1 =q-p+1; 14.int n2 = r-q; 15.l=new int[n1]; 16.r1 = new int[n2+1]; 17.for(int i=0;i 18.l[i]=