原文:线性时间的排序算法--桶排序(以leetcode164. Maximum Gap为例讲解)

前言 在比较排序的算法中,快速排序的性能最佳,时间复杂度是O N logN .因此,在使用比较排序时,时间复杂度的下限就是O N logN 。而桶排序的时间复杂度是O N C ,因为它的实现并不是基于比较实现的,而是基于映射函数实现的。 桶排序 桶排序工作的原理是将数组分到有限数量的桶子里。每个桶子再个别排序 有可能再使用别的排序算法或是以递归方式继续使用桶排序进行排序 。 桶排序利用函数的映射关 ...

2016-08-11 15:51 0 2747 推荐指数:

查看详情

leetcode[164] Maximum Gap

梅西刚梅开二度,我也记一题。 在一个没排序的数组里,找出排序后的相邻数字的最大差值。 要求用线性时间和空间。 如果用nlgn的话,直接排序然后判断就可以了。so easy View Code 但我们要的是线性时间。 其实这个思想在算法课上有讲过 ...

Sun Dec 21 09:03:00 CST 2014 0 2420
LeetCode164. Maximum Gap (2 solutions)

Maximum Gap Given an unsorted array, find the maximum difference between the successive elements in its sorted form. Try to solve it in linear time ...

Sun Dec 14 18:39:00 CST 2014 0 7822
[LeetCode] 164. Maximum Gap 求最大间距

Given an unsorted array, find the maximum difference between the successive elements in its sorted form. Return 0 if the array contains less than ...

Tue Jan 20 06:49:00 CST 2015 12 10534
线性时间排序算法

线性时间排序算法列表 线性时间排序 Name Average Worst Memory Stable Description 计数排序 ...

Mon Jul 14 21:17:00 CST 2014 5 4316
线性时间排序算法

排序,基数排序排序。它们将突破比较排序的Ω(nlgn)下界,以线性时间运行。 一、比较排序算法的时 ...

Sun Jun 22 22:19:00 CST 2014 0 4590
排序算法排序

排序是一种效率很高的排序算法,它的时间复杂度为O(n),但排序有一定的限制,只有当待排序序列的元素为0到某一确定取值范围的整数时才适用,典型的例子比如成绩的排序等。 算法思想: 设待排序序列的元素取值范围为0到m,则我们新建一个大小为m+1的临时数组并把初始值都设为0,遍历待排序序列 ...

Tue May 13 04:07:00 CST 2014 2 4105
排序算法 - 排序

是均匀分配的时候,排序使用线性时间(Θ(n))。但排序并不是比较排序,他不受到O(n log n) ...

Fri Aug 16 06:43:00 CST 2019 0 1820
排序算法之——排序

数据较少的时候用插入排序最为理想)。 二、算法效率   对N个数据进行排序时间复杂度分为两 ...

Sun Aug 12 04:58:00 CST 2018 0 8946
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM