![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java-数据结构
Smart-YI
这个作者很懒,什么都没留下…
展开
-
Java数据结构详解(三)-ArrayList
ArrayList源码详解一,ArrayList字段 /** * 默认初始化的容量大小 */ private static final int DEFAULT_CAPACITY = 10; /** * 实例共享的空数组 */ private static final Object[] EMPTY_ELEMENTDATA = {};原创 2017-09-22 17:12:26 · 238 阅读 · 0 评论 -
Java数据结构详解(十一)-Map接口
Map接口将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值。 Map 接口提供三种collection 视图,允许以键集、值集或键-值映射关系集的形式查看某个映射的内容。映射顺序 定义为迭代器在映射的 collection 视图上返回其元素的顺序。某些映射实现可明确保证其顺序,如 TreeMap 类;另一些映射实现则不保证顺序,如 HashMap 类。 注:将可变对象用作映射原创 2017-10-02 15:32:37 · 239 阅读 · 0 评论 -
Java数据结构详解(十)-ArrayDeque
ArrayDequeArrayDeque是一个循环数组.只要数组不被填满,ArrayDeque就可以不用扩容.组的任何一点都可能被看作起点或者终点.ArrayDeque是Deque 接口的大小可变数组的实现。数组双端队列没有容量限制;它们可根据需要增加以支持使用。它们不是线程安全的;在没有外部同步时,它们不支持多个线程的并发访问。禁止 null 元素。此类很可能在用作堆栈时快于 Stack,在用作队原创 2017-10-02 12:29:02 · 321 阅读 · 0 评论 -
Java数据结构详解(九)-Deque
Deque 双端队列一个线性 collection,支持在两端插入和移除元素。名称 deque 是“double ended queue(双端队列)”的缩写,通常读为“deck”。大多数 Deque 实现对于它们能够包含的元素数没有固定限制,但此接口既支持有容量限制的双端队列,也支持没有固定大小限制的双端队列。 此接口定义在双端队列两端访问元素的方法。提供插入、移除和检查元素的方法。每种方法都存在原创 2017-10-02 11:11:38 · 454 阅读 · 0 评论 -
Java数据结构详解(八)-Queue接口
Queue 接口在处理元素前用于保存元素的 collection。除了基本的 Collection 操作外,队列还提供其他的插入、提取和检查操作。每个方法都存在两种形式:一种抛出异常(操作失败时),另一种返回一个特殊值(null 或 false,具体取决于操作)。插入操作的后一种形式是用于专门为有容量限制的 Queue 实现设计的;在大多数实现中,插入操作不会失败。 抛出异常原创 2017-10-02 00:31:31 · 255 阅读 · 0 评论 -
Java数据结构详解(七)-TreeSet
TreeSet基于 TreeMap 的 NavigableSet 实现。使用元素的自然顺序对元素进行排序,或者根据创建 set 时提供的 Comparator 进行排序,具体取决于使用的构造方法。 此实现为基本操作(add、remove 和 contains)提供受保证的 log(n) 时间开销。 注意,如果要正确实现 Set 接口,则 set 维护的顺序(无论是否提供了显式比较器)必须与 equa原创 2017-10-01 18:39:10 · 321 阅读 · 0 评论 -
Java数据结构详解(六)-HashSet
HashSet此类实现 Set 接口,由哈希表(实际上是一个 HashMap 实例)支持。它不保证 set 的迭代顺序;特别是它不保证该顺序恒久不变。此类允许使用 null 元素。 此类为基本操作提供了稳定性能,这些基本操作包括 add、remove、contains 和 size,假定哈希函数将这些元素正确地分布在桶中。对此 set 进行迭代所需的时间与 HashSet 实例的大小(元素的数量)和原创 2017-10-01 12:59:25 · 723 阅读 · 0 评论 -
Java数据结构详解(五)-Set接口
Set接口一个不包含重复元素的 collection。 更确切地讲,set 不包含满足 e1.equals(e2) 的元素对 e1 和 e2,并且最多包含一个 null 元素。正如其名称所暗示的,此接口模仿了数学上的 set 抽象。 在所有构造方法以及 add、equals 和 hashCode 方法的协定上,Set 接口还加入了其他规定,这些规定超出了从 Collection 接口所继承的内容。原创 2017-10-01 12:08:55 · 315 阅读 · 0 评论 -
Java数据结构详解(二)-List接口
Java数据结构-List一,List相关结构图二,List 接口List:有序的collection 也成为序列,此接口的用户可以对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。 与 set 不同,列表通常允许重复的元素。更确切地讲,列表通常允许满足 e1.equals(e2) 的元素对 e1 和 e2,并且如果列表本身允许 n原创 2017-09-21 22:56:20 · 323 阅读 · 0 评论 -
Java数据结构详解(一)-Collection接口
Java数据结构-collection接口一原创 2017-09-21 10:29:28 · 822 阅读 · 0 评论 -
Java数据结构详解(四)-LinkedList
LinkedList源码详解一, LinkedList字段 //返回链表的逻辑大小 transient int size = 0; //头部节点 transient Node<E> first; //尾部节点 transient Node<E> last;二,LinkedList构造方法一,无参构造器public LinkedList() {}二,有参原创 2017-09-26 20:00:54 · 173 阅读 · 0 评论 -
Java数据结构详解(十二)- HashMap
HashMap基于哈希表的 Map 接口的实现。此实现提供所有可选的映射操作,并允许使用 null 值和 null 键。(除了非同步和允许使用 null 之外,HashMap 类与 Hashtable 大致相同。)此类不保证映射的顺序,特别是它不保证该顺序恒久不变。 此实现假定哈希函数将元素适当地分布在各桶之间,可为基本操作(get 和 put)提供稳定的性能。迭代 collection 视图所需的原创 2017-10-03 16:32:27 · 505 阅读 · 0 评论