【数据结构】对排序的综合总结
生活随笔
收集整理的這篇文章主要介紹了
【数据结构】对排序的综合总结
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
排序可以分為以下幾個大類:
(1)插入排序:直接插入排序、折半插入排序和希爾排序
(2)交換排序:快速排序和冒泡排序
(3)選擇排序:簡單選擇排序和堆排序
(4)外部排序:歸并排序和基數排序
針對內部排序的效率總結:
(1)時間復雜度為 O(nlogn) 的有:希爾排序、快速排序和堆排序
(2)空間復雜度不為 O(1) 的有:快速排序,采用遞歸需要用到棧,所以 O(logn) ~ O(n)
(3)對于穩定性來說,只有三種排序是穩定的:插入排序的前兩種和冒泡排序
(4)對于全局有序來說:選擇排序和交換排序
對于數據初始狀態總結:
(1)對于少量數據的排序 —— 直接插入和選擇排序
(2)數據基本有序的情況 —— 直接插入、折半插入和冒泡排序(正序)
(3)中等規模的數據,最差和平均差不多 —— 希爾排序
(4)適用于數據規模較大的 —— 堆排序、歸并排序、基數排序、快速排序
(5)數據規模較大,數據分布隨機 —— 快速排序
總結
以上是生活随笔為你收集整理的【数据结构】对排序的综合总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Redis6快速深入学习01】NoSQ
- 下一篇: 【leetcode】762. 二进制表示