自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

微信公众号:猴子聊人物

通过人物的经历,快速打通一个陌生领域的知识

原创 读JSE源码(四)集合之Map接口

1 Map总体结构 2 Map方法详细说明 3 Map源代码 1 Map总体结构 Map是一个泛型接口,设计用来保存键值对(key-value)的元素,不允许键重复,但允许值重复,每个键最多与一个值对应(An object that maps keys to values. A map ca...

2012-11-30 22:40:17

阅读数 866

评论数 0

原创 读JSE源码(三)集合之TreeSet

1 TreeSet介绍 2TreeSet使用(增删查改) 3TreeSet如何保证元素是否重复 1 TreeSet介绍 TreeSet实现了接口Serializable, Cloneable, Iterable, Collection, NavigableSet, Set, So...

2012-11-30 17:25:00

阅读数 1614

评论数 0

原创 读JSE源码(三)集合之TreeMap(1)

1 TreeMap介绍 2 TreeMap使用(增删查改) 3 TreeMap中文排序 4 读源码(链接) 1 TreeMap介绍 TreeMap是基于红黑树(red black tree)算法和NavigableMap实现的。 注意,此实现不是同步的。如果多个线程同时访问一个映射,并且其中...

2012-11-30 15:18:09

阅读数 1049

评论数 0

原创 划分算法与TopK问题

1 划分算法思想  划分(partition)就是将数据项分成两组,一组大于某个特定的数据项,而另一组小于某个特定的数据项。在划分算法中,这个特定的数据项叫做枢纽(pivot)。  划分算法的思想是中间线代表枢纽;数据项的左端和右端分别有两个指针(leftPtr和rightPtr); leftPt...

2012-11-27 22:54:47

阅读数 1292

评论数 0

原创 单元测试和JUnit

1 什么是单元测试? 2 为什么要进行单元测试? 3 如何进行单元测试? 1 什么是单元测试?        单元测试(unit test,模块测试)是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否可以达到预期目标。通常而言,一个单元测试是用于判断某...

2012-11-24 13:40:45

阅读数 613

评论数 0

原创 设计模式之策略模式-孙悟空是如何炼成的(3)

Design pattern Strategy 目录 1 一句话 2 孙悟空是如何炼成的 3 策略模式 3.1 场景 3.2 设计方案 3.3 策略模式 3.4 何时使用策略模式 3.5 代码实现 1 一句话 策略模式将算法使用者和算法分割开,达到了在运行期间,可以自由切换算法的目的。 导演可以...

2012-11-16 22:39:22

阅读数 1190

评论数 0

原创 读JSE源码(二):Comparable接口和Comparator接口

目录 1 介绍 2 Comparable接口 3 Comparator接口 4 总结   1 介绍       有这样2个人,一个人光头,一个人有黑色头发,现在不允许染发,只允许光头的带假发,理由是有头发的人没有必要再带假发,那么谁可以有多种颜色的头发?在这种情况下,有头发的人,因为他的头发和自身...

2012-11-15 23:10:37

阅读数 1627

评论数 0

原创 二分查找算法

1 定义        折半查找算法也称二分查找算法或折半搜索算法,是一种在有序数组(即前提必须是数组是已经排好序的)中查找某一特定元素的搜索算法。搜素过程是 1)计算中间元素mid 从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜素过程结束; 2)比较左边元素left, 比较右边元素r...

2012-11-15 16:45:14

阅读数 1383

评论数 0

原创 读JSE源码(一):Arrays

JDK版本:1.7.0.4   目录 1 Arrays介绍 1.1 排序 1.2 查找 2 使用例子   1 Arrays介绍     java.util.Arrays提供对数组的操作,例如排序、查找。   1.1 排序      java对基本类型数组采用快速排序,对Object对象数组采用Ti...

2012-11-15 15:37:27

阅读数 1086

评论数 0

翻译 Timsort原理介绍

翻译自 维基百科Timesort      Timsort是结合了合并排序(merge sort)和插入排序(insertion sort)而得出的排序算法,它在现实中有很好的效率。Tim Peters在2002年设计了该算法并在Python中使用(TimSort 是 Python 中 list...

2012-11-14 23:59:50

阅读数 35019

评论数 8

原创 设计模式之单例模式

目录 一、定义 二、实现 三、使用例子 一、定义 Singleton模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在。 单例类特点: 1、Java语言中单例类的一个重要的特点是类的构造方法是私有的,从而避免外界利用构造子直接创造出任意多的实例。 2、由于单例类的构造方法...

2012-11-13 23:11:42

阅读数 744

评论数 0

原创 数据结构之 链表-Double-Ended List(2)

Catalogue 一、Definition 二、Implement 三、Efficiency   一、Definition   A double-ended list(双端链表) is similar to a simple linked list, but it has an addition...

2012-11-06 16:10:35

阅读数 1036

评论数 0

原创 数据结构之链表-单链表(1)

目录 一、常用的4类基本结构 二、单向链表(SimpleLinked List) 1、定义Definition 2、实现Implement with Java language 3、效率Efficiency   一、常用的4类基本结构        数据结构(Data Structure)是指相互...

2012-11-06 15:13:43

阅读数 1080

评论数 0

原创 设计模式之适配器(1)

Design pattern- Adapter 目录 一句话 为何使用适配器? 如何使用适配器? 使用适配器的例子   一句话 适配器定义:将两个不兼容的类或接口组合在一起使用   一、            为何使用适配器 例子一:在一次学术会议上,来自美国的A只会说英语,来自中国的B只会讲汉语...

2012-11-04 08:10:14

阅读数 739

评论数 0

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