常見排序演算法總結

2021-09-29 02:41:38 字數 848 閱讀 4515

常見排序演算法總結如下:

排序方法

name

平均情況

最好情況

最壞情況

輔助空間

穩定性氣泡排序

bubblesort

o(n^2)

o(n)

o(n^2)

o(1)

穩定簡單選擇排序

******selectionsort

o(n^2)

o(n^2)

o(n^2)

o(1)

穩定直接插入排序

straightinsertionsort

o(n^2)

o(n)

o(n^2)

o(1)

穩定希爾排序

shell

o(nlogn)~o(n^2)

o(n^1.3)

o(n^2)

o(1)

不穩定堆排序

heapsort

o(nlogn)

o(nlogn)

o(nlogn)

o(1)

不穩定歸併排序

mergingsort

o(nlogn)

o(nlogn)

o(nlogn)

o(n)

穩定快速排序

quicksort

o(nlogn)

o(nlogn)

o(n^2)

o(nlogn)~o(n)

不穩定

上面有很好的例項方便理解。

常見排序演算法總結

sort.cpp 定義控制台應用程式的入口點。include stdafx.h include using namespace std const int len 100 class csort 注意此處應該有分號 csort csort length len 建構函式,初始化陣列 arr j 1 ...

常見排序演算法總結

1.氣泡排序 蠻力法 基本思想 兩兩比較相鄰記錄,如果反序側交換,直到沒有反序的記錄為止。如果是正序排,將待排序的元素看作是豎著排列的 氣泡 較小的元素比較輕,從而要往上浮。時間複雜度 o n n void bubblesort int a,int n 優化的氣泡排序 if flag 0 break...

常見排序演算法(總結)

演算法名 時間複雜度 空間複雜度 穩定性氣泡排序o n2 o 1 不穩定 選擇排序o n2 o 1 不穩定 插入排序o n2 o 1 穩定 歸併排序o nlog n o n 可以優化到o 1 穩定 快速排序o nlog n o logn n 不穩定 堆排序o n logn o 1 不穩定 希爾排序o...