数据结构
文章平均质量分 64
嬅南雨蝶
不忘初心,脚踏实地
展开
-
HashMap实现原理
HashMap其实也是由一个线性数组实现的,可以理解为其存储数据的容器就是一个线性数组,但是一个线性数组怎么可以存储键值对的数据呢?在这里,HashMap做了一些处理1.首先HashMap里面实现了一个静态内部类Entry,其属性有key、value、next,我们很明显可以看得出来Entry就是HashMap键值对实现的一个基础Bean。上面说的HashMap存储的基础就是这个Entry[ ]数组原创 2015-03-18 11:19:39 · 471 阅读 · 0 评论 -
堆排序
堆数据结构是一种数组对象,它可以被视为一科完全二叉树结构。它的特点是父节点的值大于(小于)两个子节点的值(分别称为大顶堆和小顶堆)。它常用于管理算法执行过程中的信息,应用场景包括堆排序,优先队列等。原创 2015-04-27 14:18:41 · 414 阅读 · 0 评论 -
排序稳定性
首先,排序算法的稳定性大家应该都知道,通俗地讲就是能保证排序前2个相等的数其在序列的前后位置顺序和排序后它们两个的前后位置顺序相同。在简单形式化一下,如果Ai = Aj, Ai原来在位置前,排序后Ai还是要在Aj位置前。 其次,说一下稳定性的好处。排序算法如果是稳定的,那么从一个键上排序,然后再从另一个键上排序,第一个键排序的结果可以为第二个键排序所用。基数排序就是这样,先按低位排序,转载 2015-05-13 15:46:25 · 461 阅读 · 0 评论 -
java实现并查集
java实现并查集的操作,包括find,union,connected等原创 2016-03-03 14:44:44 · 538 阅读 · 0 评论