摘要:
在学习设计模式过程中练手写的一些代码,位置在: https://github.com/xbk417/design_pattern 阅读全文
摘要:
快速排序和冒泡排序相似,都是通过多次比较和交换来实现排序。 具体流程如下: 1、首先设定一个分界值,通过分界值将数组分成左右两部分,将大于等于分界值的数据交换集中到右侧数组,将小于分界值的数据交换集中到左侧数组; 2、然后,左侧数组和右侧数组可以独立排序。对于左侧数组可以取一个分界值,将左侧数组分成 阅读全文
摘要:
希尔排序严格来说是基于插入排序的思想,又被称为缩小增量排序。 具体流程如下: 1、将包含n个元素的数组,分成n/2个数组序列,第一个数据和第n/2+1个数据为一对... 2、对每对数据进行比较和交换,排好顺序; 3、然后分成n/4个数组序列,再次排序; 4、不断重复以上过程,随着序列减少并直至为1, 阅读全文
摘要:
直接插入排序是将未排序的数据插入至已排好序序列的合适位置。 具体流程如下: 1、首先比较数组的前两个数据,并排序; 2、比较第三个元素与前两个排好序的数据,并将第三个元素放入适当的位置; 3、比较第四个元素与前三个排好序的数据,并将第四个元素放入适当的位置; ...... 4、直至把最后一个元素放入 阅读全文
摘要:
选择排序算法在每一步中选取最小值来重新排序,通过选择和交换来实现排序。 具体流程如下: 1、首先从原数组中选择最小的1个数据,将其置于第一个位置。 2、然后从剩下的数据中再选择其中最小的一个数据,并将其置于原数组的第二个位置。 3、不断重复选择和交换的过程,直至最后排序完成。 假如有初始数据:25 阅读全文
摘要:
冒泡排序是所有排序算法中最基本、最简单的一种。思想就是交换排序,通过比较和交换相邻的数据来达到排序的目的。 具体流程如下: 1、对要排序的数组中的数据,依次比较相邻的两个数据的大小。 2、如果前面的数据大于后面的数据,就把这两个数据进行交换。这样一轮比较和交换过后,就把最小的数据放在数组的最前面; 阅读全文
摘要:
Hashtable Hashtable 的实例有两个参数影响其性能:初始容量 和加载因子。容量 是哈希表中桶 的数量,初始容量就是哈希表创建时的容量。注意,哈希表的状态为 open:在发生“哈希冲突”的情况下,单个桶会存储多个条目,这些条目必须按顺序搜索。加载因子 是对哈希表在其容量自动增加之前可以 阅读全文
摘要:
此图是 java 中 Collection 相关的接口与类的关系的类图。其中,类只是集合框架的一部分,比较常用的一部分。 第一次画类图,着实很费劲,不过收获也不小。 下面是相关接口和类的解释说明。文字来自 JDK API 1.6 中文版。原谅我的懒惰,实在不想自己写,太麻烦。如有错误,还请指正。 如 阅读全文
摘要:
本篇是对HBase官方参考文档的大体翻译,介于本人英文水平实在有限,难免有纰漏之处。本篇不只是对官方文档的翻译,还加入了一些本人对HBase的理解。在翻译过程中,一些没有营养的废话,我就忽略了没有翻译。本篇按照 2016年 5、6 月 最新版的 http://hbase.apache.org/boo 阅读全文
摘要:
经常有人把Java内存区分为堆内存(Heap)和栈内存(Stack),这种分法比较粗糙,Java内存区域的划分实际上远比这复杂。这种划分方式的流行只能说明大多数程序员最关注的、与对象内存分配关系最密切的内存区域是这两块。其中所指的“堆”是为 Java 堆,所指的“栈”是为虚拟机栈或者说是虚拟机栈中局 阅读全文
摘要:
本文翻译原链接:https://hadoopabcd.wordpress.com/2015/03/17/hdfs-file-blocks-distribution-in-datanodes/ 当写入一个文件到 HDFS 时,它被切分成数据块,块大小是由配置文件 hdfs-default.xml 中的 阅读全文