排序算法的比较
算法 | 平均时间复杂度 | 最好时间复杂度 | 最坏时间复杂度 | 空间复杂度 | 排序方式 | 稳定性 | 备注 |
---|---|---|---|---|---|---|---|
冒泡排序 | $O(N^2)$ | $O(N)$ | $O(N^2)$ | $O(1)$ | In-place | 稳定 | |
选择排序 | $O(N^2)$ | $O(N^2)$ | $O(N^2)$ | $O(1)$ | In-place | 稳定 | |
插入排序 | $O(N^2)$ | $O(N)$ | $O(N^2)$ | $O(1)$ | In-place | 稳定 | 时间复杂度和初始顺序有关 |
希尔排序(Shell Sort) | $O(Nlog_2N)$ | $O(Nlog_2N)$ | $$O(N^2)$ | $O(1)$ | In-place | 不稳定 | 改进版插入排序 |
归并排序(Merge Sort) | $O(Nlog_2N)$ | $O(Nlog_2N)$ | $O(Nlog_2N)$ | $O(N)$ | Out-place | 不稳定 | |
快速排序 | $O(Nlog_2N)$ | $O(Nlog_2N)$ | $O(N^2)$ | $O(1)$ | In-place | 不稳定 | |
堆排序(Heap Sort) | $O(Nlog_2N)$ | $O(Nlog_2N)$ | $O(Nlog_2N)$ | $O(1)$ | In-place | 不稳定 | |
桶排序 (bucke sort) | O(N) | O(N) | $O(N^2)$ or $O(Nlog_2N)$ | $O(N)$ | Out-place | 稳定 | 最坏时间复杂度取决于对于桶内元素进行排序的算法 |
冒泡排序(Bubble Sort)
https://swsmile.info/post/algorithm-sort-bubble-sort/
选择排序(Selection Sort)
https://swsmile.info/post/algorithm-sort-selection-sort/
插入排序(Insertion Sort)
https://swsmile.info/post/algorithm-sort-insertion-sort/
希尔排序(Shell Sort)
https://swsmile.info/post/algorithm-sort-shell-sort/
归并排序(Merge Sort)
https://swsmile.info/post/algorithm-sort-merge-sort/
快速排序(Quick Sort)
https://swsmile.info/post/algorithm-sort-quick-sort/
堆排序(Heap Sort)
https://swsmile.info/post/algorithm-sorting-heap-sort/
桶排序(Bucket Sort)
https://swsmile.info/post/algorithm-sort-bucket-sort/
计数排序(Counting Sort)
https://swsmile.info/post/algorithm-sort--counting-sort/
FEATURED TAGS
algorithm
algorithmproblem
architecturalpattern
architecture
aws
c#
cachesystem
codis
compile
concurrentcontrol
database
dataformat
datastructure
debug
design
designpattern
distributedsystem
django
docker
domain
engineering
freebsd
git
golang
grafana
hackintosh
hadoop
hardware
hexo
http
hugo
ios
iot
java
javaee
javascript
kafka
kubernetes
linux
linuxcommand
linuxio
lock
macos
markdown
microservices
mysql
nas
network
networkprogramming
nginx
node.js
npm
oop
openwrt
operatingsystem
padavan
performance
programming
prometheus
protobuf
python
redis
router
security
shell
software testing
spring
sql
systemdesign
truenas
ubuntu
vmware
vpn
windows
wmware
wordpress
xml
zookeeper