10種排序演算法總結

2021-06-13 21:57:33 字數 1028 閱讀 2222

排序演算法有很多,所以在特定情景中使用哪一種演算法很重要。為了選擇合適的演算法,可以按照建議的順序考慮以下標準: 

(1)執行時間 

(2)儲存空間 

(3)程式設計

工作 對於資料量較小的情形,(1)(2)差別不大,主要考慮(3);而對於資料量大的,(1)為首要。 

主要排序法有: 

一、冒泡(bubble)排序——相鄰交換 

二、選擇排序——每次最小/大排在相應的位置 

三、插入排序——將下乙個插入已排好的序列中 

四、殼(shell)排序——縮小增量 

五、歸併排序 

六、快速排序 

七、堆排序 

八、拓撲排序 

九、錦標賽排序 

十、基數排序 

一、冒泡(bubble)排序 

//從小到大排序(氣泡排序)

public class bubblesort ;

//int a = ;

system.out.println("排序之前:");

for(int i=0;i=0;i--)

}//如果經過乙個迴圈都沒有進行交換,說明此陣列已經是排好序的了

if(!swap)

} system.out.println("排序之後:");

for(int i=0;i效率 o(n²),適用於排序小列表。 

二、選擇排序

//從小到大排序(選擇排序)

public class selectionsort ;

//int a = ;

system.out.println("排序之前:");

for (int i = 0; i < a.length; i++)

system.out.println();

for(int i=0;i效率o(n²),適用於排序小的列表。 

三、插入排序 

void insertsortarray()

arr[j+1]=temp;

} }

排序演算法總結 10 桶排序

桶排序假設待排序序列的元素服從 0 1 間的均勻分布,首先將區間 0 1 劃分成m個大小相同的子區間,或稱為桶。然後將所有元素放在各自所屬的區間中。因為序列是均勻分布的,所以各個區間中個元素個數相差不大。然後對每個區間的元素排列,可以用插入排序,因為元素較少,也可用快速排序。然後遍歷每個區間,將各個...

10種排序演算法,沒有實踐

1.氣泡排序 2.選擇排序 3.插入排序 4.交換排序 5.歸併排序 6.快速排序 7.希爾排序 8.堆排序 9.雙向氣泡排序 10.計數排序 排序演算法是一種基本並且常用的演算法。由於實際工作中處理的數量巨大,所以排序演算法 對演算法本身的速度要求很高。而一般我們所謂的演算法的效能主要是指演算法的...

8種排序演算法總結

1.直接插入排序 原理 將陣列分為無序區和有序區兩個區,然後不斷將無序區的第乙個元素按大小順序插入到有序區中去,最終將所有無序區元素都移動到有序區完成排序。要點 設立哨兵,作為臨時儲存和判斷陣列邊界之用。實現 void sortnumber method2 int array,int length ...