摘要: PriorityQueue类 优先队列不管你按照什么顺序插入元素,出队列的时候元素都是按顺序输出的。也就是每次调用remove的时候,都返回当前队列中最小的元素。然后队列中的元素不是维持排序状态的,如果你迭代这个优先队列中的元素,会发现他们不是排好序的。 优先队列使用堆数据结果,堆是一种自我调整的二 阅读全文
posted @ 2016-02-04 17:30 五环外的老北京 阅读(261) 评论(0) 推荐(0) 编辑
摘要: HashSet类 关于HashMap的实现细节 HashMap是用LinkedList实现的,每个list被称为一个桶(bucket),在hashmap中要查找一个元素,首先对传入的key进行散列,并根据散列函数(最简单的散列函数是取余运算)找到是哪个桶,然后在顺着桶的linkedlist寻找这个k 阅读全文
posted @ 2016-02-04 16:08 五环外的老北京 阅读(261) 评论(0) 推荐(0) 编辑
摘要: LinkedList类 由于基于数组的链表有一个大的缺点,那就是从链表中间移除一个元素时需要将此元素后面的所有元素向前移动,会产生大量的开销,同样的在链表中间插入一个新元素也会有大量开销。如下图: Linkedlist由于其实现方式使用的是指针,或者说是引用,那么就不存在arraylist那种插入或 阅读全文
posted @ 2016-02-04 16:00 五环外的老北京 阅读(332) 评论(0) 推荐(0) 编辑
摘要: 集合类中的基本接口 集合类中最基础的接口是Collection: public interface Collection<E> { boolean add(E element); Iterator<E> iterator(); } add方法加一个元素到集合中,如果改变了集合则返回true,如果集合 阅读全文
posted @ 2016-02-04 15:56 五环外的老北京 阅读(638) 评论(0) 推荐(0) 编辑