前不久看到十大经典排序的动画,感觉挺震撼的,巴拉巴拉老东西写点东西。链接在此 经典排序算法动画
排序算法 - sort algorithm
- 比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此也称为非线性时间比较类排序。
- 非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此也称为线性时间非比较类排序。
相关大O的复杂度之前记载过,这里也忘记个差不多了。算法空间复杂度和时间复杂度
晚些增加对算法的理解,会比较有趣。
冒泡排序 - (bubble sort)
1 | /** |
选择排序 - (selection sort)
1 | /** |
插入排序(insertion sort)
1 | /** |
希尔排序(Shell Sort)
1 |
|
归并排序(Merge Sort)
1 | /** |
快速排序(Quick Sort)
1 | /** |
堆排序(Heap Sort)
1 | //声明全局变量,用于记录数组array的长度; |
计数排序(Counting Sort)
1 |
|
桶排序(Bucket Sort)
1 |
|
基数排序(Radix Sort)
1 |
|