![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java--数据结构
文章平均质量分 50
yjc0403
这个作者很懒,什么都没留下…
展开
-
Java常用数据结构
Java常用数据结构 java集合的总体框架 Java集合是java提供的工具包,包含了常用的数据结构:集合、链表、队列、栈、数组、映射等。Java集合工具包位置是java.util.* Java集合主要可以划分为4个部分:List列表、Set集合、Map映射、工具类(Iterator迭代器、Enumeration枚举类、Arrays和Co...原创 2017-08-01 18:22:10 · 100 阅读 · 0 评论 -
java -- HashTable
java -- HashTable 特点 HashTable 是一个散列表,它存储的内容是键值对(key-value)映射。HashTable 继承于Dictionary,实现了Map、Cloneable、java.io.Serializable接口。HashTable 的实现同步的,这意味着它是线程安全的。它的key、value都不可以为null。此外,Hash...原创 2017-08-14 17:54:50 · 95 阅读 · 0 评论 -
java - TreeMap
java - TreeMap 特点 TreeMap 是一个有序的key-value集合,它是通过红黑树实现的。TreeMap 继承于AbstractMap,实现了Map、Cloneable、java.io.Serializable接口。TreeMap 实现了NavigableMap接口,意味着它支持一系列的导航方法。比如返回有序的key集合。TreeMap 基...原创 2017-08-15 18:24:25 · 113 阅读 · 0 评论 -
java -- WeakHashMap
java -- WeakHashMap 特点 WeakHashMap 继承于AbstractMap,实现了Map、Cloneable、java.io.Serializable接口。WeakHashMap 也是一个散列表,它存储的内容也是键值对(key-value)映射。WeakHashMap 键和值都可以是null。WeakHashMap 的键是“弱键”。在...原创 2017-08-16 16:22:39 · 91 阅读 · 0 评论 -
java -- LinkedHashMap
java -- LinkedHashMap 特点 LinkedHashMap 继承于AbstractMap,实现了Map、Cloneable、java.io.Serializable接口。继承自HashMap 所以依然是散列表,拥有key-value结构。LinkedHashMap 键和值都可以为null。与HashMap有着同样的存储结构,但它加入了一个双向...原创 2017-08-16 17:25:31 · 104 阅读 · 0 评论 -
java -- Map总结
java -- Map总结 框架图 概括 接口 Map 是“键值对”映射的抽象接口。AbstractMap 实现了Map中的绝大部分函数接口。它减少了“Map的实现类”的重复编码。SortedMap 有序的“键值对”映射接口。NavigableMap 是继承于SortedMap的,支持导航函数的接口。 实现类 ...原创 2017-08-17 14:44:38 · 195 阅读 · 0 评论 -
java -- Iterator和Enumeration比较
java -- Iterator和Enumeration比较 区别在哪 在Java集合中,我们通常都通过 “Iterator(迭代器)” 或 “Enumeration(枚举类)” 去遍历集合。先看看下面源码: Enumeration是一个接口,它的源码如下:package java.util;public interface Enumerat...原创 2017-08-17 16:24:32 · 96 阅读 · 0 评论 -
java -- 数据结构总结
java -- 数据结构总结 概念 数据结构:数据之间的关系,提高程序效率。 逻辑关系:认为认为 集合:在一个范围内有多个数据,数据之间没有关系线性:一对一关系树形:一对多图:多对多 物理关系:内存存储 顺序存储:数组链式存储:链表 问题 数据结构难不难? 容易但很难有没有用? ...原创 2017-11-28 14:39:55 · 164 阅读 · 0 评论 -
java -- 排序算法
java -- 排序算法 查找和排序算法是算法的入门知识,其经典思想可以用于很多算法当中。因为其实现代码较短,应用较常见。所以在面试中经常会问到排序算法及其相关的问题。但万变不离其宗,只要熟悉了思想,灵活运用也不是难事。一般在面试中最常考的是快速排序和归并排序,并且经常有面试官要求现场写出这两种排序的代码。对这两种排序的代码一定要信手拈来才行。还有插入排序、冒泡排序...原创 2017-11-30 16:37:32 · 169 阅读 · 0 评论 -
java -- HashMap
java -- HashMap 特点 HashMap 是一个散列表,它存储的内容是键值对(key-value)映射。HashMap 继承于AbstractMap,实现了Map、Cloneable、java.io.Serializable接口。HashMap 的实现不是同步的,这意味着它不是线程安全的。它的key、value都可以为null。此外,HashMap中...原创 2017-08-14 17:34:38 · 106 阅读 · 0 评论 -
java -- Set总结
java -- Set总结 学习Set会容易很多,毕竟,Set的实现类都是基于Map来实现的(HashSet是通过HashMap实现的,TreeSet是通过TreeMap实现的)。 首先,我们看看Set架构。 Set 是继承于Collection的接口。它是一个不允许有重复元素的集合。AbstractSet 是一个抽象类,它继承于A...原创 2017-08-11 18:20:33 · 106 阅读 · 0 评论 -
java -- ArrayList
Java -- ArrayList ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长,类似于C语言中的动态申请内存,动态增长内存。 优点 查找数据性能很快,跟Vector比也要快些可以插入任何数据类型以数组实现,节约空间,但有容量限制,默认初始化大小为10,当超出后,会自动扩容为原来的1/2(50%)的容量,...原创 2017-08-02 18:15:03 · 76 阅读 · 0 评论 -
java -- LinkedList
java -- LinkedList LinkedList是一个简单的数据结构,与ArrayList不同的是,他是基于链表实现的。 优点 插入和删除操作比 ArrayList 更加高效LinkedList 是一个继承于AbstractSequentialList的双向链表。它也可以被当作堆栈、队列或双端队列进行操作。不需要连续的存储空间,只需...原创 2017-08-03 14:47:41 · 114 阅读 · 0 评论 -
java -- Vector
java -- Vector Vector 是矢量队列,和ArrayList有些类似,不过差别就在于Vector是线程安全的。 总结 Vector实际上是通过一个数组去保存数据的。当我们构造Vecotr时;若使用默认构造函数,则Vector的默认容量大小是10。当Vector容量不足以容纳全部元素时,Vector的容量会增加。若容量增加系数 &...原创 2017-08-03 15:30:21 · 96 阅读 · 0 评论 -
java -- Stack
java -- Stack Stack是栈。继承于Vector,它的特性是:先进后出(FILO, First In Last Out)。 特点 先进后出Stack也是通过数组实现的,而非链表,Stack是继承于Vector。当然,我们也可以将LinkedList当作栈来使用 常用方法 代码示例import...原创 2017-08-03 16:20:22 · 97 阅读 · 0 评论 -
java -- 集合错误机制 -- fail-fast
java -- 集合错误机制 -- fail-fast fail-fast 机制是java集合(Collection)中的一种错误机制。当多个线程对同一个集合的内容进行操作时,就可能会产生fail-fast事件。 例如:当某一个线程A通过iterator去遍历某集合的过程中,若该集合的内容被其他线程所改变了;那么线程A访问集合时,就会抛出Concur...原创 2017-08-03 18:06:23 · 144 阅读 · 0 评论 -
java -- List总结
java -- List总结 概括 1. List 是一个接口,它继承于Collection的接口。它代表着有序的队列。 2. AbstractList 是一个抽象类,它继承于AbstractCollection。AbstractList实现List接口中除size()、get(int location)之外的函数。 3. AbstractSe...原创 2017-08-04 11:17:44 · 93 阅读 · 0 评论 -
java -- HashSet
java -- HashSet HashSet 是一个没有重复元素的集合。 优点 没有重复元素元素可以为null操作很简单,更像是对HashMap做了一次“封装”,而且只使用了HashMap的key来实现各种特性。 缺点 不能保证元素的顺序非同步的,也就是会出现fail-fast 工作原理 ...原创 2017-08-04 17:05:04 · 118 阅读 · 0 评论 -
java -- TreeSet
java -- TreeSet TreeSet和HashSet很类似,不过是以HashMap实现,并且是有序的。 优点 没有重复元素元素可以为null操作很简单,更像是对HashMap做了一次“封装”,而且只使用了HashMap的key来实现各种特性。有序,因为底层以TreeMap实现,自动排序了可以被克隆,因为实现了Cloneable接口...原创 2017-08-04 18:09:56 · 109 阅读 · 0 评论 -
java -- 超大量数据排序
java -- 超大量数据排序 可以参考下别人的方法:http://mp.weixin.qq.com/s/K94xtyTA50vU6UGG_ho23Q原创 2017-12-14 14:45:48 · 3562 阅读 · 0 评论