- 博客(6)
- 资源 (1)
- 收藏
- 关注
转载 快速排序算法原理及实现(单轴快速排序、三向切分快速排序、双轴快速排序)
1. 单轴快速排序的基本原理快速排序的基本思想就是从一个数组中任意挑选一个元素(通常来说会选择最左边的元素)作为中轴元素,将剩下的元素以中轴元素作为比较的标准,将小于等于中轴元素的放到中轴元素的左边,将大于中轴元素的放到中轴元素的右边,然后以当前中轴元素的位置为界,将左半部分子数组和右半部分子数组看成两个新的数组,重复上述操作,直到子数组的元素个数小于等于1(因为一个元素的数组必定是有
2018-02-20 19:29:14 389
转载 Collections.sort()和Arrays.sort()的算法实现
Arrays.sort()先来看看Arrays.sort();,一点进这个方法会看到是这样子的public static void sort(int[] a) { DualPivotQuicksort.sort(a, 0, a.length - 1, null, 0, 0);}123果然没这么简单,DualPivotQuicksort翻译过来就是双轴快速排序,关于双轴
2018-02-20 19:24:53 350
转载 ArrayList详细介绍(源码解析)和使用示例
这一章开始,我们对Collection的具体实现类进行讲解;首先,讲解List,而List中ArrayList又最为常用。因此,本章我们讲解ArrayList。先对ArrayList有个整体认识,再学习它的源码,最后再通过例子来学习如何使用它。内容包括:第1部分 ArrayList简介第2部分 ArrayList数据结构第3部分 ArrayList源码解析(基于JDK1.6.0_45)
2018-02-19 18:53:06 571
转载 UML各种关系线的含义
内容目录:从一个示例开始类之间的关系时序图附录:《图说设计模式》看懂UML类图和时序图这里不会将UML的各种元素都提到,我只想讲讲类图中各个类之间的关系; 能看懂类图中各个类之间的线条、箭头代表什么意思后,也就足够应对 日常的工作和交流; 同时,我们应该能将类图所表达的含义和最终的代码对应起来; 有了这些知识,看后面章节的设计模式结构图就没有什么问题了;
2018-02-19 14:54:09 3237 1
转载 Java 中 Comparable 和 Comparator 比较
本文,先介绍Comparable 和Comparator两个接口,以及它们的差异;接着,通过示例,对它们的使用方法进行说明。 Comparable 简介Comparable 是排序接口。若一个类实现了Comparable接口,就意味着“该类支持排序”。 即然实现Comparable接口的类支持排序,假设现在存在“实现Comparable接口的类的对象的List列表(或数组)”,则该List列表(...
2018-02-19 14:22:44 275
原创 Java的TreeMap和HashMap的介绍和使用
1. TreeMap的介绍和使用第1部分 TreeMap介绍TreeMap 简介TreeMap 是一个有序的key-value集合,它是通过红黑树实现的。TreeMap 继承于AbstractMap,所以它是一个Map,即一个key-value集合。TreeMap 实现了NavigableMap接口,意味着它支持一系列的导航方法。比如返回有序的key集合
2018-02-12 15:04:23 11257
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人