自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

收拾心灵_描绘未来

让自己的努力变得更有价值

  • 博客(10)
  • 资源 (18)
  • 问答 (2)
  • 收藏
  • 关注

原创 排序算法系列——八大排序算法对比分析

本系列最后一篇,综合分析下前面介绍的八种排序算法的效率,以及各自的适用情况。 通知实际测试比较各排序算法的效率,并分析各个排序算法的适用场景。

2015-08-21 19:14:48 3304 1

原创 排序算法系列——基数排序

基数排序不同于其他的七种排序算法,它是基于一种分配法,而非比较。基数排序属于“分配式排序”(distribution sort),基数排序法又称“桶子法”(bucket sort)或bin sort,顾名思义,它是透过键值的部份资讯,将要排序的元素分配至某些“桶”中,藉以达到排序的作用。它的灵感来自于队列(Queue),它最独特的地方在于利用了数字的有穷性(阿拉伯数字只有0到9的10个)。

2015-08-21 12:05:09 1700

原创 排序算法系列——归并排序

归并排序的核心思想同上一篇介绍的快速排序,都是采用了分治法的思想。其基本思想是将一个待排序序列,划分成两个子序列,然后将这两个子序列排好序之后合并,并递归的将子序列划分为更小的子序列,一直到只有一个元素的子序列,然后自底向上两两合并。

2015-08-20 13:42:48 978

原创 排序算法系列——快速排序

快速排序同冒泡排序,是交换排序的一种。快速排序是C.R.A.Hoare于1962年提出的一种划分交换排序。它采用了一种分治的策略,通常称其为分治法(Divide-and-ConquerMethod)。快速排序的时间复杂度是O(nlogn),比其他O(n^2)的排序算法快很多,不过实现起来还是有一定难度的。 分治法的基本思想是:将原问题分解为若干个规模更小但结构与原问题相似的子问题。递归地解这些子问

2015-08-19 17:35:39 1298

原创 排序算法系列——冒泡排序

冒泡排序是交换排序的一种,其思想是从序列头部开始逐步往后遍历,每次遍历比较相邻两个元素,如果顺序不对则交换,n-1次遍历之后序列就完成了排序。

2015-08-18 11:31:26 802

原创 排序算法系列——堆排序

堆排序同直接选择排序一样是选择排序的一种。堆排序是借助一种数据结构——堆来完成排序,堆是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。 什么是堆: 关于二叉树这里就不叙述了。堆(二叉堆)可以视为一棵完全的二叉树,完全二叉树的一个“优秀”的性质是,除了最底层之外,每一层都是满的,这使得堆可以利用数组来表示(普通的一般的二叉树通常用链表作为基本容

2015-08-14 18:39:22 1027

原创 排序算法系列——直接选择排序

前面两篇介绍了两种插入排序算法:直接插入排序和希尔排序。这篇介绍选择排序的一种:直接选择排序。从名字就可以看出直接选择排序与直接插入排序很相似,两者相同点在与都是将待排序序列分成有序区和无序区两部分,不同之处在于直接插入排序是从无序区选出一个插入到有序区合适的位置,而直接选择排序是从无序区选出最小的一个插入到有序区尾部,使得有序区保持有序。 基本思想: 一组待排序的数据,首先将其划分成两部分,一

2015-08-13 20:08:51 916

原创 排序算法系列——希尔排序

希尔排序同之前介绍的直接插入排序一起属于插入排序的一种。希尔排序算法是按其设计者希尔(Donald Shell)的名字命名,该算法由1959年公布,是插入排序的一种更高效的改进版本。它的作法不是每次一个元素挨一个元素的比较。而是初期选用大跨步(增量较大)间隔比较,使记录跳跃式接近它的排序位置;然后增量缩小;最后增量为 1 ,这样记录移动次数大大减少,提高了排序效率。希尔排序对增量序列的选择没有严格规

2015-08-13 10:55:23 1034

原创 排序算法系列——直接插入排序

直接插入排序与希尔排序一起属于插入排序的一种。插入适合于针对小数据量进行排序,当数据量很大时插入排序的效率相对其他排序会较低,因为他的时间复杂度是0(n2)(下面会进行分析)。基本思想:一组待排序的数据,首先将其划分成两部分,一部分是已排好序的,另一部分是待排序的,然后依次从待排序部分取出一个数插入到已排序部分的适当位置,保证第一部分始终是已排好序的,等待排序部分全部取出放入已排序部分之后整个排序

2015-08-12 16:41:56 1346

原创 一个简单的二叉查找树实现

/** * <p> * 二叉树 * </p> * * @author Vicky * @date 2015-8-10 */class BSTree { private Node root; private int num;// 节点数量 private int index;// 用于遍历 public BSTree() { super(

2015-08-10 16:17:49 992

MapReduce实现矩阵相乘算法

使用Hadoop MapReduce实现两个矩阵相乘算法

2013-11-29

Java类加载器原理

自己根据一些文章总结的,不知道有没有漏洞,希望大家知道,谢谢

2012-05-26

Struts2与Spring之间的整合方法与原理

详细说明了Spring如何与Struts2之间整合,以及整合的原理

2012-05-20

Java多线程

详细介绍了Java的多线程之间的同步,对Synchronized和Lock进去深入解析,希望能帮到大家

2012-05-20

Lucene-3.0.1.CHM

Lucene3.0.1API 什么好说的

2011-12-05

SQL中EXISTS与IN

详细介绍了sql语句中的EXISTS与IN的区别,对于这方面有点模糊的可以参考这篇文档

2011-12-04

数据库事务管理

详细介绍了数据库中的事务管理方面的知识,对于深入了解数据库的事务有很大帮助

2011-12-04

查看oracle数据库是否归档和修改归档模式

详细介绍了Oracle的归档模式,以及如何启用Oracle的归档模式

2011-12-04

oracle基本命令

囊括了所有Oracle的基本操作命令,适合作为查询文档

2011-12-04

oracle日志文件大全

收集了一些Oracle日志文件介绍,详细的介绍了如何操作Oracle的日志文件,很有实用价值

2011-12-04

ext-4.0.7-commercial.zip

最新的ext4.0.7压缩版,很好的,欢迎下载

2011-11-21

文件上传fileupload.jar

很好的在网页中轻松实现文件上传组件,使用简单

2011-11-21

详细介绍使用Dom4j读取xml文件的方法

详细介绍了使用Dom4j进行xml文件的读取方法

2011-11-12

使用java程序读取xml文件中的内容

详细介绍了java程序中读取xml文件中的内容的四种方法

2011-11-12

java经典代码

包括了诸多java 源代码,可以方便的从中找到你所需要的源代码,清楚明了,易学,简单明了

2011-10-01

visio2003用户指南

visio2003用户指南 可以知道用户如何使用visio2003

2011-10-01

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除