- 浏览: 3566607 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (1491)
- Hibernate (28)
- spring (37)
- struts2 (19)
- jsp (12)
- servlet (2)
- mysql (24)
- tomcat (3)
- weblogic (1)
- ajax (36)
- jquery (47)
- html (43)
- JS (32)
- ibatis (0)
- DWR (3)
- EXTJS (43)
- Linux (15)
- Maven (3)
- python (8)
- 其他 (8)
- JAVASE (6)
- java javase string (0)
- JAVA 语法 (3)
- juddiv3 (15)
- Mule (1)
- jquery easyui (2)
- mule esb (1)
- java (644)
- log4j (4)
- weka (12)
- android (257)
- web services (4)
- PHP (1)
- 算法 (18)
- 数据结构 算法 (7)
- 数据挖掘 (4)
- 期刊 (6)
- 面试 (5)
- C++ (1)
- 论文 (10)
- 工作 (1)
- 数据结构 (6)
- JAVA配置 (1)
- JAVA垃圾回收 (2)
- SVM (13)
- web st (1)
- jvm (7)
- weka libsvm (1)
- weka屈伟 (1)
- job (2)
- 排序 算法 面试 (3)
- spss (2)
- 搜索引擎 (6)
- java 爬虫 (6)
- 分布式 (1)
- data ming (1)
- eclipse (6)
- 正则表达式 (1)
- 分词器 (2)
- 张孝祥 (1)
- solr (3)
- nutch (1)
- 爬虫 (4)
- lucene (3)
- 狗日的腾讯 (1)
- 我的收藏网址 (13)
- 网络 (1)
- java 数据结构 (22)
- ACM (7)
- jboss (0)
- 大纸 (10)
- maven2 (0)
- elipse (0)
- SVN使用 (2)
- office (1)
- .net (14)
- extjs4 (2)
- zhaopin (0)
- C (2)
- spring mvc (5)
- JPA (9)
- iphone (3)
- css (3)
- 前端框架 (2)
- jui (1)
- dwz (1)
- joomla (1)
- im (1)
- web (2)
- 1 (0)
- 移动UI (1)
- java (1)
- jsoup (1)
- 管理模板 (2)
- javajava (1)
- kali (7)
- 单片机 (1)
- 嵌入式 (1)
- mybatis (2)
- layui (7)
- asp (12)
- asp.net (1)
- sql (1)
- c# (4)
- andorid (1)
- 地价 (1)
- yihuo (1)
- oracle (1)
最新评论
-
endual:
https://blog.csdn.net/chenxbxh2 ...
IE6 bug -
ice86rain:
你好,ES跑起来了吗?我的在tomcat启动时卡在这里Hibe ...
ES架构技术介绍 -
TopLongMan:
...
java public ,protect,friendly,private的方法权限(转) -
贝塔ZQ:
java实现操作word中的表格内容,用插件实现的话,可以试试 ...
java 读取 doc poi读取word中的表格(转) -
ysj570440569:
Maven多模块spring + springMVC + JP ...
Spring+SpringMVC+JPA
简单来说,就是把数据分组,放在一个个的桶中,然后对每个桶里面的在进行排序。
例如要对大小为[1..1000]范围内的n个整数A[1..n]排序
可以把桶设为大小为10的范围,具体而言,设集合B[1]存储[1..10]的整数,集合B[2]存储
(10..20]的整数,……集合B[i]存储( (i-1)*10, i*10]的整数,i = 1,2,..100。总共有
100个桶。
然后对A[1..n]从头到尾扫描一遍,把每个A[i]放入对应的桶B[j]中。
然后再对这100个桶中每个桶里的数字排序,这时可用冒泡,选择,乃至快排,一般来说任
何排序法都可以。最后依次输出每个桶里面的数字,且每个桶中的数字从小到大输出,这
样就得到所有数字排好序的一个序列了。
假设有n个数字,有m个桶,如果数字是平均分布的,则每个桶里面平均有n/m个数字。如果
对每个桶中的数字采用快速排序,那么整个算法的复杂度是
O(n + m * n/m*log(n/m)) = O(n + nlogn - nlogm)
从上式看出,当m接近n的时候,桶排序复杂度接近O(n)
当然,以上复杂度的计算是基于输入的n个数字是平均分布这个假设的。这个假设是很强的
,实际应用中效果并没有这么好。如果所有的数字都落在同一个桶中,那就退化成一般的
排序了。
需要特别注意的是桶的大小不能设置得太小,否则当随机数据堆积在一个小的范围是,会
造成桶的溢出(数组越界)
(以上代码是互联网上转来的,再次谢过)
发表评论
-
java 归并排序 自己写
2012-02-22 09:03 1464package endual.xier.writeaga ... -
递归思想 汉诺塔的问题
2012-02-09 10:46 1665package endual; public cl ... -
带权图 最短路径 代码自己写
2012-02-09 10:46 3193最短路径问题 可 ... -
带权图的最小生成树 (代码自己写)
2012-02-08 16:02 46691.大理论的一些资料 ... -
数据结构学习的在线好网址
2012-02-07 16:20 1573http://sjjg.js.zwu.edu.cn/SFXX/ ... -
有向无环图 拓扑排序
2012-02-07 15:53 3470package endual.tuopupaixu; ... -
java 图的最小生成树问题 (代码自己写)
2012-02-07 13:51 2795最小生成树是基于无无向图,并且是没有权值的图的。它的实现可以用 ... -
java 图 代码自己写
2012-02-07 13:07 1797图的建立也是基于数组的,但是遍历的话是基于链表或者是矩阵的 ... -
堆 (自己写)
2012-02-06 13:32 1470堆也是基于数组的哦,所以在创建的时候,请先要考虑好数组的大小了 ... -
哈希表的一些概念 代码(自己写)
2012-02-05 18:44 2196首先,我们要明确一点 ... -
红黑树的一些概念
2012-02-05 14:43 2019普通的二叉树作为数 ... -
两个正整数相加
2012-02-05 09:48 1879import java.util.Scanner; i ... -
二叉树代码
2012-02-05 09:51 1735package endual; /** * 树 ... -
java 二叉树
2012-02-04 14:17 1582为什么要用二叉树 通常我们去实现数据结构有两种方式,一 ... -
各类排序算法
2012-02-04 13:19 1496隐藏▲ 查 · 论 -
快速排序算法(自己写)
2012-02-04 12:58 1775快速排序算法的伪代码。 package endual; ... -
java 希尔排序算法(自己写)
2012-02-04 10:26 1881希尔排序算法是对插入算法的应用吧,就是多次的使用了插入算法多排 ... -
递归 字符串的全排列
2012-02-03 15:29 2468package endual; public class ... -
java递归的一个问题
2012-02-03 13:56 1875据说比达格斯理论家,又称一群在必达格斯领导下工作的古希腊数学家 ... -
java 实现链表(自己写的)
2012-02-03 11:03 1669今天用java写了下的链表, 还是有点糊涂的。这和C语言写的链 ...
相关推荐
例如,提供的`BucketSort.docx`文件可能包含了桶排序的详细步骤、代码示例以及不同情况下的性能分析。通常,这样的文档会讲解如何创建和管理桶,如何选择合适的排序算法对桶内元素排序,以及如何优化桶排序的实现以...
桶排序.py 使用python代码实现桶排序.py 使用python代码实现桶排序.py 使用python代码实现桶排序.py 使用python代码实现桶排序.py 使用python代码实现桶排序.py 使用python代码实现桶排序.py 使用python代码实现桶...
c++桶排序的代码,当初我学排序的时候也用了一些时间才想通,所以,如果一时想不通的话也别放弃,要一直坚持下去。
C++代码实现桶排序时,需要注意内存管理,避免不必要的拷贝和内存泄漏。此外,选择合适的桶大小和桶数量对性能有很大影响,这需要根据输入数据的特性进行调整。 标签中提到的"heap-sort"是指堆排序,它是另一种常用...
桶排序(Bucket Sort)是一种分布式排序算法,它将要排序的数据分到几个有序的桶里,每个桶再分别排序,最后按照每个桶内元素的顺序依次取出,组合...在C++中实现桶排序,可以充分利用标准库提供的工具,简化代码编写。
桶排序介绍和java代码实现 桶排序是一种线性时间复杂度的排序算法,它通过将待排序元素分配到不同的桶中,对每个桶中的元素进行排序,然后按照桶的顺序依次将元素取出,从而实现排序的目的。 桶排序的算法步骤包括...
希尔排序、归并排序、桶排序、堆排序和快速排序都是经典的计算机算法,主要用于对数据进行排序。在C++编程语言中,这些排序算法的实现是程序员必须掌握的基础技能之一。接下来,我们将深入探讨这些排序算法的工作...
桶排序(Bucket Sort)是一种分布式排序算法,常用于大数据处理和流式计算中。它将待排序的数据分布到多个“桶”中,每个桶再独立地进行排序,最后按照桶的顺序依次取出桶中的元素,形成有序序列。桶排序的核心思想...
### 使用Java实现桶排序 #### 知识点概述 桶排序是一种分布式的排序算法,它将数组分到有限数量的“桶”里,然后分别对每个桶进行排序(通常是使用其他排序算法)。最后,将各个桶的数据按顺序合并起来得到最终...
在编程领域,排序算法是数据结构与算法学习中的基础部分,它们用于整理无序的数据序列。以下是关于Java实现的七种排序算法的详细...在Java编程中,理解这些排序算法的实现和性能特点,有助于写出高效、适应性强的代码。
### Python3实现桶排序(源代码)的知识点详解 #### 一、桶排序的基本概念与原理 桶排序(Bucket Sort)是一种高效的排序算法,尤其在处理具有特定分布规律的数据时表现突出。它属于非比较型排序算法之一,通过将...
### C++实现桶排序 #### 实现原理与关键要素 桶排序是一种高效的排序算法,尤其适合数据分布较为均匀的情况。其基本思想是将输入数据按照一定规则分配到多个有序的“桶”中,随后对每个桶内的数据进行排序,最后将...
本文将深入探讨在C++中实现的几种主要排序算法,包括归并排序、插入排序、冒泡排序、希尔排序、快速排序以及桶排序,并对它们的原理、优缺点和适用场景进行比较。 首先,让我们逐一了解这些排序算法。 1. **归并...
桶排序假设输入数据服从均匀分布,将数据分到有限数量的桶里,每个桶再单独排序,最后合并所有桶的排序结果。桶排序的时间复杂度可以达到线性O(n + k),其中k是桶的数量。Java实现如下(未给出,需自行实现)。 9. ...
桶排序c语言
桶排序(Bucket sort)或所谓的箱排序,是一个排序算法,工作的原理是将数组分到有限数量的桶子里。每个桶子再个别排序(有可能再使用别的排序算法或是以递归方式继续使用桶排序进行排序)。...桶排序代码: /* *
提供的`bucketSort.cc`文件可能包含一个桶排序的C++实现,通过阅读源代码,你可以深入理解桶排序的具体步骤和细节,包括映射函数的设计、桶的创建和数据的分布等。 桶排序是一种非常实用的排序算法,尤其在处理大...
**桶排序(Bucket Sort)**是一种分布式的排序算法,它将待排序的数据分布到多个“桶”中,每个桶内部再分别进行排序,最后...在`桶排序.cpp`代码中,我们可以深入学习其实现细节,理解并掌握这种排序算法的工作原理。
### Java实现桶排序算法 #### 实现原理与关键步骤 桶排序是一种高效的排序算法,尤其适合于处理数据分布均匀的情况。其核心思想是通过将数据分成若干个“桶”,然后分别对这些桶内的数据进行排序,最后将这些排序...
在上面的代码中,`bucketSort` 函数接受一个整数数组和桶的大小作为输入,并使用桶排序算法对该数组进行排序。该函数首先找到输入数组中的最小值和最大值,并计算桶的个数。然后,该函数创建一个大小为桶的个数的桶...