【刷題】麪筋-數據結構-排序算法的複雜度、穩定性、內部外部排序

複雜度圖示

複雜度小結

  • O(n^2) 平方階排序 -- 各種簡單排序:直接插入、直接選擇和冒泡排序。算法

  • O(nlog2n) 線性對數階排序 -- 快速排序、堆排序和歸併排序;blog

  • O(n1+§)) 排序,§ 是介於 0 和 1 之間的常數 -- 希爾排序排序

  • O(n) 線性階排序 -- 基數排序,此外還有桶、箱排序。內存

內部排序和外部排序

  • 排序算法能夠分爲內部排序和外部排序。方法

  • 內部排序是數據記錄在內存中進行排序。im

  • 外部排序是因排序的數據很大,一次不能容納所有的排序記錄,在排序過程當中須要訪問外存。數據

  • 常見的內部排序算法有:插入排序、希爾排序、選擇排序、冒泡排序、歸併排序、快速排序、堆排序、基數排序等。img

穩定性

  • 穩定性是指:全部相等的數通過某種排序方法後,仍保持它們排序前的相對次序(先後次序),則是該排序方法是穩定的。di

    • 如:A1=A2,且排序前,A1在A2的前面,穩定排序後,A1仍在A2前面。
  • 穩定的排序算法:冒泡排序、插入排序、歸併排序和基數排序。loading

  • 不穩定的排序算法:選擇排序、快速排序、希爾排序、堆排序。

END

相關文章
相關標籤/搜索