β

桶排序的Nodejs实现

粉丝日志 225 阅读
算法为王系列文章,涵盖了计算机算法,数据挖掘(机器学习)算法,统计算法,金融算法等的多种跨学科算法组合。在大数据时代的背景下,算法已经成为了金字塔顶的明星。一个好的算法可以创造一个伟大帝国,就像Google。 算法为王的时代正式到来…. 关于作者: 张丹(Conan), 程序员Java,R,PHP,Javascript weibo:@Conan_Z blog: http://blog.fens.me email: bsspirit@gmail.com 转载请注明出处: http://blog.fens.me/algorithm-bucketsort-nodejs/ 前言 一个好的程序算法,可以提升百倍的程序性能。但并没有一种通用的算法,适用于所有场景。选择合适的算法,用在正确的地方,是一个好算法的开始。 本文将用Nodejs实现桶排序算法。 目录 桶排序介绍 桶排序算法演示 Nodejs程序实现 案例:桶排序统计高考分数 1. 桶排序介绍 桶排序(Bucket sort)是一种基于计数的排序算法,工作的原理是将数据分到有限数量的桶子里,然后每个桶再分别排序(有可能再使用别的排序算法或是以递回方式继续使用桶排序进行排序)。当要被排序的数据内的数值是均匀分配的时候,桶排序时间复杂度为Θ(n)。桶排序不同于快速排序,并不是比较排序,不受到时间复杂度 O(nlogn) 下限的影响。关于快速排序,请参考文章:快速排序的Nodejs实现 桶排序按下面4步进行: 1. 设置固定数量的空桶。 2. 把数据放到对应的桶中。 3. 对每个不为空的桶中数据进行排序。 4. 拼接从不为空的桶中数据,得到结果。 桶排序,主要适用于小范围整数数据,且独立均匀分布,可以计算的数据量很大,而且符合线性期望时间。 2. 桶排序算法演示 举例来说,现在有一组数据[7, 36, 65, 56, 33, 60, 110, 42, 42, 94, 59, 22, 83, 84, 63, 77, 67, 101],怎么对其按从小到大顺序排序呢? …
Read more →
作者:粉丝日志
跨界的IT博客|Hadoop家族, R, RHadoop, Nodejs, AngularJS, NoSQL, IT金融
原文地址:桶排序的Nodejs实现, 感谢原作者分享。

发表评论