小小總結了下 ,希望別不記得
排序型別
排序方法
平均時間
最壞時間
最好時間
穩定空間
插入直接插入
o( n2 )
o( n2 )
o( n )
穩定o( 1 )
希爾排序
o( n3/2 )
增量序列最後為1,只有公因子1
不穩o( 1 )
選擇簡單選擇
o( n2 )
o( n2 )
o( n )
穩定o( 1 )
堆排序o(n lb n)
o(n lb n)
o(n lb n)
不穩o( 1 )
交換氣泡排序
o( n2 )
o( n2 )
o( n )
穩定o( 1 )
快速排序
o(n lb n)
o( n2 )
o(n lb n)
不穩o(lb n)
歸併2路歸併
o(n lb n)
o(n lb n)
o(n lb n)
穩定o( n )
分配基數排序
o(d(n + rd))
o(d(n + rd))
o(d(n + rd))
穩定o( rd )
資料結構 排序
郝斌版 資料結構 學習筆記 冒泡 公升序,12比,大放後面,再23比,直至最大的在最後面 插入 2,3,4,依次插入值,保證插入值後的序列為有序的 選擇 後面所有的最小值依次排到最前 快速排序 歸併排序 22排,44排,88排.排序演算法標準 時間,空間,穩定性 排序和查詢的關係 排序是查詢的前提,...
資料結構 排序
1.希爾排序 shellsort 增量序列d n為要排序數的個數 void shellinsertsort int a,int n,int dk n個要排序的數,dk是增量 2 堆排序 已知h s m 除了h s 外均滿足堆的定義 調整h s 使其成為大頂堆.即將對第s個結點為根的子樹篩選,para...
資料結構 排序
1 對n個數字進行排序,期中兩兩不同的數字的個數為k,n遠遠大於k,而n的取值區間長度超過了記憶體的大小,時間複雜度最小可以是?兩兩不同的數字的個數為k,因為不知道確定的數字範圍,桶排序不適合,又因為 n遠遠大於k,本題使用hash表來統計,首先獲得k個數及其每個數出現的次數,然後對k個數進行排序,...