您好,登錄后才能下訂單哦!
小編給大家分享一下怎么使用JAVA實現(xiàn)選擇排序,插入排序,冒泡排序,以及兩個有序數(shù)組的合并,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
關(guān)于排序的算法題,有插入排序,冒泡排序,選擇排序,以下貼上用JAVA實現(xiàn)的代碼:
public class test5 { public static void print(int []array) //輸出數(shù)組方法 { for(int i=0;i<array.length;i++) System.out.print(" "+array[i]); } public static void selectsort(int array[]) //選擇排序方法 { for (int i = 0; i < array.length; i++) { int min=i; for(int j=i+1;j<array.length;j++) if(array[min]>array[j]) min =j; if(i!=min) { int temp=array[i]; array[i]=array[min]; array[min]=temp; } } } public static void insertsort(int array[]) //插入排序方法 { for (int i = 1; i < array.length; i++) { int a=array[i]; int j=i-1; for(;j>=0;j--) { if(a<array[j]) array[j+1]=array[j]; else break; } array[j+1]=a; } } public static void bubblesort(int array[]) { for(int i=0;i<array.length-1;i++) { for(int j=0;j<array.length-1-i;j++) { if(array[j]>array[j+1]) { int temp=array[j]; array[j]=array[j+1]; array[j+1]=temp; } } } } public static int[] merge(int a[],int b[]) { int c[]=new int[a.length+b.length]; int i=0,j=0,k=0; while (i<a.length&&j<b.length) { if (a[i]>b[j]) c[k++]=b[j++]; else c[k++]=a[i++]; } while(i<a.length) c[k++]=a[i++]; while(j<b.length) c[k++]=b[j++]; return c; } public static void main(String[] args) { int a[]={55,76,29,80,92,41,16}; int b[]={73,10,84,99,69,45}; // System.out.println("hello" ); System.out.print("數(shù)組a:" ); print(a); System.out.print('\n'); System.out.print("數(shù)組b:" ); print(b); System.out.print('\n'); System.out.print("選擇排序:" ); // selectsort(a); print(a); System.out.print('\n'); System.out.print("冒泡排序:" ); bubblesort(a); print(a); System.out.print('\n'); System.out.print("插入排序:" ); insertsort(b); print(b); System.out.print('\n'); System.out.print("合并數(shù)組:" ); print(merge(a, b)); } }
運行后的結(jié)果如下圖所示
以上是“怎么使用JAVA實現(xiàn)選擇排序,插入排序,冒泡排序,以及兩個有序數(shù)組的合并”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。