幾種常見的排序演算法對比

2021-06-29 01:14:49 字數 702 閱讀 9184

幾種常見的排序演算法對比:

排序法

平均時間

最差情形

穩定度額外空間 備註

冒泡o(n2)

o(n2)

穩定o(1) n

小時較好 交換

o(n2)

o(n2)

不穩定o(1) n

小時較好 選擇

o(n2)

o(n2)

不穩定o(1) n

小時較好 插入

o(n2)

o(n2)

穩定o(1)

大部分已排序時較好 基數

o(logrb)

o(logrb)

穩定o(n) b

是真數(0-9), r

是基數(

個十百)

shell

o(nlogn)

o(ns) 1

不穩定

o(1) s

是所選分組 快速

o(nlogn)

o(n2)

不穩定o(nlogn) n

大時較好 歸併

o(nlogn)

o(nlogn) 穩定

o(1) n

大時較好 堆

o(nlogn)

o(nlogn)

不穩定o(1) n

大時較好

穩定的排序:冒泡,插入,基數,歸併

幾種常見的排序演算法對比

排序法 平均時間 最差 情形 穩 定度 額外 空間 備註 冒泡o n 2 o n 2 穩定 o 1 n 小時較好 交換 o n 2 o n 2 不穩定o 1 n 小時較好 選擇 o n 2 o n 2 不穩定o 1 n 小時較好 插入 o n 2 o n 2 穩定 o 1 大部分已排序時較好 基數 ...

Java 幾種排序演算法對比

直接插入排序 插入排序就是 取出乙個數,插入到有序陣列中,首先,取出第乙個元素放入有序陣列中,然後取出第二個,兩個數進行比較,如果它小,則有序數的最後乙個向後移動一格,然後與有序陣列倒數第二個比較,如果小,則繼續向後移動。如果碰到比它小的,則插入在其後面。演算法思想為 外層迴圈是遍歷陣列的所有值 內...

幾種常見排序演算法

幾種常見排序演算法 1氣泡排序 bubble sort 氣泡排序思路 將序列當中的左右元素,依次比較,保證右邊的元素始終大於左邊的元素 第一輪結束後,序列最後乙個元素一定是當前序列的最大值 對序列當中剩下的n 1個元素再次執行步驟1。3.對於長度為n的序列,一共需要執行n 1輪比較 實現 for i...