[算法] 七大排序算法详解

排序算法对比

排序算法 类别 时间复杂度(平均) 空间复杂度 稳定性 时间复杂度(最优) 时间复杂度(最坏)
插入排序 插入排序 O( n 2 n^2 ) O(1) 稳定 O(n) O( n 2 n^2 )
shell排序 插入排序 O( n 2 n^2 ) O(1) 不稳定 O(n) O( n 2 n^2 )
选择排序 选择排序 O( n 2 n^2 ) O(1) 不稳定 O( n 2 n^2 ) O( n 2 n^2 )
堆排序 选择排序 O( n l o g 2 n nlog_2n ) O(1) 不稳定 O( n l o g 2 n nlog_2n ) O( n l o g 2 n nlog_2n )
冒泡排序 交换排序 O( n 2 n^2 ) O(1) 稳定 O(n) O( n 2 n^2 )
快速排序 交换排序 O( n l o g 2 n nlog_2n ) O( n l o g 2 n nlog_2n ) 不稳定 O( n l o g 2 n nlog_2n ) O( n 2 n^2 )
归并排序 O( n l o g 2 n nlog_2n ) O(n) 稳定 O( n l o g 2 n nlog_2n ) O( n l o g 2 n nlog_2n )
基数排序

按照时间复杂度排序:
按照空间复杂度排序:

插入排序

shell排序

选择排序

堆排序

冒泡排序

快速排序

归并排序

基数排序

猜你喜欢

转载自blog.csdn.net/github_36955602/article/details/87989710