排序算法可以说是一项基本功,解决实际问题中经常遇到,针对实际数据的特点选择合适的排序算法可以使程序获得更高的效率。
一、选择排序
对于给定的一组记录,将每轮比较最小记录的位置与该轮初始位置的记录交换。
1 | /** |
二、插入排序
将当前记录依次插入到之前的有序数组中。
1 | /** |
三、冒泡排序
依次对相邻的两个数进行比较。
1 | /** |
四、快速排序
一趟排序后将原序列分成两部分,前一部分的所有记录均比后一部分小,递归该过程。
1 | /** |
五、归并排序
两两归并,直到得到一个有效序列
1 | /** |
六、堆排序
堆排序包括:
1、构建堆。
2、交换堆顶元素与最后一个元素的位置。
1 | /** |
七、希尔排序
也称为“缩小增量排序”。根据对应步长,将待排序列分成多个子序列,分别对子序列进行插入排序。
1 | /** |