因為自己對於幾種排序方法的時間複雜度很迷糊,所以整理了這個**,幫助自己記憶,這個**的主要作用就是做做判斷題和選擇題,除此之外,沒有什麼作用。
排序方法
最壞時間複雜度
最好時間複雜度
平均時間複雜度
穩定性直接插入
o(n2)
o(n)
o(n2)
√簡單選擇
o(n2)
o(n2)
o(n2)
×氣泡排序
o(n2)
o(n)
o(n2)
√快速排序
o(n2)
o(nlog2n)
o(nlog2n)
×堆排序
o(nlog2n)
o(nlog2n)
o(nlog2n)
×歸併排序
o(nlog2n)
o(nlog2n)
o(nlog2n)
√不穩定排序演算法有哪些
1、堆排序
2、希爾排序
3、快速排序
4、選擇排序
口訣:一堆(堆)餡兒(希爾)快(快速)選(選擇)
js排序的時間複雜度 各種排序演算法時間複雜度
各種排序演算法比較 各種常用排序演算法 類別排序方法 時間複雜度 空間複雜度 穩定性複雜性 特點最好 平均最壞 輔助儲存 簡單插入 排序直接插入 o n o n2 o n2 o 1 穩定簡單 希爾排序 o n o n1.3 o n2 o 1 不穩定複雜 選擇排序 直接選擇 o n o n2 o n2...
各種查詢 排序的時間複雜度
各種查詢 排序的時間複雜度 1 氣泡排序 氣泡排序就是把小的元素往前調或者把大的元素往後調。比較是相鄰的兩個元素比較,交換也發生在這兩個元素之間。所以相同元素的前後順序並沒有改變,所以氣泡排序是一種穩定排序演算法。2 選擇排序 選擇排序是給每個位置選擇當前元素最小的,比如給第乙個位置選擇最小的。例子...
各種排序演算法的時間複雜度
選擇排序 快速排序 希爾排序 堆排序不是穩定的排序演算法,氣泡排序 插入排序 歸併排序和基數排序是穩定的排序演算法。排序演算法不穩定的含義是 在排序之前,有兩個數相等.但是在排序結束之後,它們兩個有可能改變順序.比如說 在乙個待排序佇列中,a和b相等,且a排在b的前面,而排序之後,a排在了b的後面....