
数据结构
Jon_Deng
这个作者很懒,什么都没留下…
展开
-
顺序存储结构与链式存储结构的比较(也可以说的顺序表与链表的比较)
顺序存储结构与链式存储结构的比较(也可以说的顺序表与链表的比较)转载 2016-03-20 13:03:29 · 1271 阅读 · 0 评论 -
数组实现顺序队列、顺序循环队列
一、数组实现顺序队列 /** * 顺序队列 此实现会出现假溢出现象 * * @author Administrator * */ public class MyArrayQueue implements Serializable {/** * */private static final long serialVersionUID = 74811495914348原创 2016-03-20 17:21:51 · 705 阅读 · 0 评论 -
HashSet的add(E e)方法剖析
HashSet底层原理 JDK 1.6 中文API描述:此类实现 Set 接口,由哈希表(实际上是一个 HashMap 实例)支持。它不保证 set 的迭代顺序;特别是它不保证该顺序恒久不变。此类允许使用 null 元素。 此类为基本操作提供了稳定性能,这些基本操作包括 add、remove、contains 和 size,假定哈希函数将这些元素正确地分布在桶中。对此 set 进行迭代所需的时原创 2016-03-22 00:29:32 · 3495 阅读 · 0 评论 -
Java HashMap的hash和indexFor函数
Java HashMap的hash和indexFor函数转载 2016-03-22 00:31:55 · 1373 阅读 · 0 评论 -
TreeSet唯一性以及有序性底层剖析
TreeSet底层原理TreeSet底层数据结构是红黑树(一种自平衡的二叉树,自平衡是指如果有空的左/右子树,元素会先入空的左/右子树,而不会一直往一个方方向添加元素出现不平衡现象)。该自平衡二叉树保证了元素的有序性(存储逻辑顺序),因为按照前、中、后三种顺序都可以有序的读取到集合中的元素。 下面是关键底层源码: 发现add方法中调用了TreeSet中的一个成员变量m.put()方法。而Navi原创 2016-03-22 01:24:32 · 5660 阅读 · 0 评论 -
HashMap的put、get方法分析与Hash冲突的分析、解决
HashMap的put、get方法分析与Hash冲突的分析、解决原创 2016-09-26 23:40:35 · 5280 阅读 · 0 评论 -
数据结构-二叉排序树
如果需要一个满足:支持排序性、高效插入、删除操作、高效查找的数据结构,怎么做?先看看一些简单的数据结构:1)排序顺序表(数组):查找可以采用折半查找算法,时间效率为O(log2n);插入、删除操作的时间复杂度为O(n),数据量大时,效率太低。2)排序单链表:只能采用顺序查找,时间复杂度为O(n),不能采用折半查找法;插入和删除操作时间负责度为O(n),虽然没有数据移动,原创 2016-09-27 10:22:40 · 674 阅读 · 0 评论