- 博客(8)
- 收藏
- 关注
原创 Java中的STL-HashMap中红黑树的原理和应用
Java中的STL-HashMap中红黑树的原理和应用 红黑树 我相信大部分程序员对红黑树这个数据结构都不陌生。下面来巩固一下红黑树数据结构。 R-B Tree,全称是Red-Black Tree,又称为“红黑树”,它一种特殊的二叉查找树。红黑树的每个节点上都有存储位表示节点的颜色,可以是红(Red)或黑(Black)。它有以下几个特点。 1、 每个节点或者是黑色,或者是红色。 2 、根节点是黑...
2019-02-28 17:06:25 4556
原创 Java中的STL-Vector
Java中的STL-Vector public class Vector<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.Serializable 从JDK源码中Vector的声明可以看出 Vector 是矢量队列,它是JDK1.0版本添...
2019-02-27 15:58:58 579 5
原创 Java中的STL-Stack
Java中的STL-Stack public class Stack<E> extends Vector<E> 从Stack的定义来看,它只是在Vector的基础上新增了自己的API,如下。 public E push(E item) { addElement(item); return item; } public synchronized E p...
2019-02-27 15:58:04 474
原创 Java中的STL-HashMap
Java中的STL-HashMap public class HashMap&amp;lt;K,V&amp;gt; extends AbstractMap&amp;lt;K,V&amp;gt; implements Map&amp;lt;K,V&amp;gt;, Cloneable, Serializable JDK1.8是这样定义的HashMap的,这里我有一个问题。AbstractMap实现了M
2019-02-26 23:42:07 579 2
原创 Java中的STL-LinkedList
Java中的STL-LinkedList LinkedList的继承关系 如下图所示 Queue接口继承了Collection接口,另外提供了offer(E e)、remove()、poll()等方法完成一个队列的FIFO的基本操作。 Deque接口继承了Queue接口,Deque是一个双端队列的接口,可以从前往后,也可以从后往前。 LinkedList实际上就是一个双端队列的具体实现,因此它...
2019-02-25 23:49:13 469 1
原创 Java中的STL-fail-fast原理和解决
fail-fast fail-fast是指java集合(Collection)中的一种错误检测机制,多个线程对同一集合的内容进行操作时,就可能产生fail-fast事件。 ArrayList中的fail-fast示例 当我们利用ArrayList中的iterater()对集合进行遍历操作时,如果其他线程修改了该list,就会报出ConcurrentModificationException异常。下...
2019-02-25 17:03:34 332 5
原创 Java中的STL-Map
Java中的STL01-Map 要点 Set的实现是基于Map的,HashSet是基于HashMap的,TreeSet是基于TreeMap的。 Map的继承关系如下图所示 Map接口 public interface Map<K,V> { } Map接口中的API abstract void clear() abstract boolean ...
2019-02-25 17:02:13 529
原创 Java中的STL-Collection
Java中的List和Set概述 实现、继承和依赖关系 如上图所示 List 和Set,List中的元素可以重复,Set中的元素不可重复 Collection接口List和Set接口都需要继承的接口,内部提供大部分集合需要的函数,如size() contains(…)…等等。 Iterator是用来遍历一个集合的接口,提供两个方法,hasNext()、next()。 List接口除了继承Col...
2019-02-25 17:01:02 503
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人