01 / SORT入门基础
冒泡排序(Bubble Sort)
重复比较相邻元素,将较大的元素逐步交换到序列末端。思路直观,适合用来理解排序的基本过程。
平均 O(n²)最坏 O(n²)稳定
从基础入门到高效排序,循序渐进地理解算法。
重复比较相邻元素,将较大的元素逐步交换到序列末端。思路直观,适合用来理解排序的基本过程。
每一轮从未排序区间中选出最小元素,放到已排序区间的末尾。交换次数较少,但比较次数固定。
将当前元素插入前方已排序区间的合适位置。对于数据量较小或基本有序的数组,表现通常不错。
通过逐步缩小增量进行分组插入排序,让元素更快地移动到最终位置。性能与增量序列的选择有关。
采用分治策略,将序列拆分为更小的子序列,分别排序后再合并。时间复杂度稳定,适合处理大规模数据。
选取基准元素,将序列划分为大小两侧,再递归处理子区间。实际应用广泛,通常具有较好的平均性能。
利用堆这种数据结构反复取出最大或最小元素。时间复杂度有保证,并且可以在原数组上完成排序。
统计每个键值出现的次数,再根据统计结果确定元素位置。适用于取值范围不大、以整数为主的数据。
将数据分配到多个桶中,对桶内元素分别排序,最后按桶的顺序合并。适合数据分布较为均匀的场景。
按照数字的个位、十位等关键字逐位排序,逐步得到最终有序序列。适合位数有限的整数或定长字符串。
这里是一个个人技术学习与记录空间,主要记录排序算法、数据结构、编程语言及日常开发中的实践经验。