摘要:
1. 快速排序 1.1 排序原理 在数组中找一个分界元素,将数组分为两个区间,小于分界元素的全部放在分界元素之前,其他的放在分界元素之后; 在分出来的两个区间(不包括分界元素)重复上述过程,直到区间缩小为1; 1.2 性能分析 1.2.1 执行效率 最好情况时间复杂度:数据每次分为对等的两个区间,时 阅读全文
摘要:
1. 归并排序 1.1 排序原理 采用分治思想,一般用递归实现 将一个无序数组从中间分成两个无序数组,然后对两个无序数组排序,排序之后再将两个有序数组合并为一个有序数组; 1.2 性能分析 1.2.1 执行效率 它的效率和原始数组的元素顺序无关,效率稳定;最好,最坏,平均复杂度都一样; 假设n个元素 阅读全文
摘要:
1. 选择排序 1.1 排序原理 将数组分为两个区间,一个有序区间,一个无序区间。开始默认数组为无序区间; 从无序区间取最小的一个元素,将最小的元素与无序区间的第一个元素交换位置,即插入有序区间的末尾; 重复这个过程,直到无序区间没有元素; 1.2 性能分析 1.2.1 执行效率 最小时间复杂度:数 阅读全文
摘要:
1. 插入排序 1.1 排序原理 将数组分为两个区间,一个有序区间,一个无序区间。开始默认第一个元素为有序区间; 从无序区间取一个元素,在有序区间找到合适的位置将其插入; 重复这个过程,直到无序区间没有元素; 1.2 性能分析 1.2.1 执行效率 最小时间复杂度:数据完全有序时,只需进行一次遍历操 阅读全文