一 概述
本文對十大經典排序算法做簡要的總結(按常用分類方式排列),包含核心思想、時間/空間復雜度及特點。
二、比較類排序
1. 冒泡排序 (BUBBLE SORT)
思想:重復交換相鄰逆序元素,像氣泡上浮
復雜度:
時間:O(n^2)(最好情況O(n))
空間:O(1)
特點:簡單但效率低,穩定排序
2. 選擇排序 (SELECTION SORT)
思想:每次選擇最小元素放到已排序末尾
復雜度:
時間:O(n^2)
空間:O(1)
特點:不穩定,交換次數少(適合小數據)
3. 插入排序 (INSERTION SORT)
思想:將未排序元素插入已排序序列的合適位置
復雜度:
時間:O(n^2)(最好情況O(n))
空間:O(1)
特點:穩定,對小規模/基本有序數據高效
4. 希爾排序 (SHELL SORT)
思想:分組插入排序(縮小增量法)
復雜度:
時間:O(n^{1.3})(依賴增量序列