JAVA中在運用陣列進行排序功能時,一般有四種方法:快速排序法、冒泡法、選擇排序法、插入排序法。以下是為大家分享的JAVA常用4種排序方法,供大家參考借鑑,歡迎瀏覽!
當然 程式中最簡單的使用就是:快速排序和氣泡排序,插入排序的使用更具有技巧性,選擇排序則過於複雜,冗雜的程式碼不利於程式的使用和軟體的測試。
快速排序法主要是運用了Arrays中的'一個方法()實現。
冒泡法是運用遍歷陣列進行比較,通過不斷的比較將最小值或者最大值一個一個的遍歷出來。
選擇排序法是將陣列的第一個資料作為最大或者最小的值,然後通過比較迴圈,輸出有序的陣列。
插入排序是選擇一個數組中的資料,通過不斷的插入比較最後進行排序。下面我就將他們的實現方法一一詳解供大家參考。
第一
利用Arrays帶有的排序方法快速排序
import ys;
public class Test{
public static void main(String[] args){
int[] a={5,4,2,4,9,1};
(a); //進行排序
for(int i: a){
t(i);
}
}
}
第二
氣泡排序演算法
public static int[] bubbleSort(int[] args){
//氣泡排序演算法
for(int i=0;i<th-1;i++){
for(int j=i+1;jargs[j]){
int temp=args[i];
args[i]=args[j];
args[j]=temp;
}
}
}
return args;
}
第三
選擇排序演算法
public static int[] selectSort(int[] args){
//選擇排序演算法
for (int i=0;i<th-1 i++ ){
int min=i;
for (int j=i+1;jargs[j]){
min=j;
}
}
if (min!=i){
int temp=args[i];
args[i]=args[min];
args[min]=temp;
}
}
return args;
}
第四
插入排序演算法
public static int[] Sort(int[] args){//
for(int i=1;i0;j--){
if (args[j]<args[j-1]){
int temp=args[j-1];
args[j-1]=args[j];
args[j]=temp;
}
else break;
}
}
return args;
}
以上就是java中的四種排序方法。
不同的方法效率不一樣,下面是不同的演算法的比較和資料交換時的大O表示。
氣泡排序:比較O(N2) 資料交換O(N2)
選擇排序:比較O(N2) 資料交換O(N)
插入排序:比較O(N2) 複製資料O(N)
在實際應用中,我們要儘量選擇效率高的演算法。