摘要: 第一个突破O(n^2)的排序算法;是简单插入排序的改进版;它与插入排序的不同之处在于,它会优先比较距离较远的元素。 希尔排序(Shell Sort),也称递减增量排序算法,1959年Shell发明。是插入排序的一种高速而稳定的改进版本。 希尔排序是先将整个待排序的记录序列分割成为若干子序列分别进行直 阅读全文
posted @ 2022-07-01 00:05 夏尔_717 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 1991年的计算机先驱奖获得者、斯坦福大学计算机科学系教授罗伯特·弗洛伊德(Robert W.Floyd) 和威廉姆斯(J.Williams)在1964年共同发明了著名的堆排序算法(Heap Sort). 堆的定义如下:$n$个元素的序列${k_1,k_2,···,k_n}$当且仅当满足下关系时,称 阅读全文
posted @ 2022-07-01 00:05 夏尔_717 阅读(120) 评论(0) 推荐(0) 编辑
摘要: 计数排序的核心在于将输入的数据值转化为键存储在额外开辟的数组空间中。作为一种线性时间复杂度的排序,计数排序要求输入的数据必须是有确定范围的整数。 一、基本思想 计数排序的特征当输入的元素是 n 个 0 到 k 之间的整数时,它的运行时间是 Θ(n + k)。计数排序不是比较排序,排序的速度快于任何比 阅读全文
posted @ 2022-07-01 00:05 夏尔_717 阅读(108) 评论(0) 推荐(0) 编辑