Java集合框架
文章平均质量分 56
不爱吃酸的酸柠檬
这个作者很懒,什么都没留下…
展开
-
LRUCache实现
LRUCache实现在面试中,我们经常听到说LRU这个关键词,那么我们需要了解什么是LRU,我的理解是,LRU是一种淘汰策略,我们都知道操作系统的内存更替策略、Redis的缓存淘汰策略都有它的一个影子。那么要知其所以然,我们还得需要手工实现它,那么这里我给出一个实现是基于双端链表+哈希表的,这里并没有考虑到并发的场景,如果读者想去优化,可以给缓存加入读写锁ReentrantReadWriteLock。public static class LRUCache { private static cl原创 2021-10-08 17:25:18 · 181 阅读 · 0 评论 -
Java集合框架2— LinkedList
Java集合框架(2) - LinkedList Java的集合框架其实是常用数据结构的实现,上篇博客我们讲了ArrayList这种基于数组形式实现的列表,那么这篇博客我们主要讲解基于双向链表实现的列表:LinkedList。那么这里说一下常见的面试题:Java的ArrayList和LinkedList有什么区别?这个问题其实问的其实是数据结构的基础。数组支持随机访问,但是它在列表中间添加和删除元素困难;链表虽然不支持随机访问,但是它在列表中间添加和删除元素简单。继承与实现体系public cla原创 2021-07-18 21:10:49 · 77 阅读 · 0 评论 -
Java集合框架1 - ArrayList
Java集合框架(1) - ArrayList篇 Java内置了很多数据结构的实现,比如ArrayList、LinkedList、ArrayDeque等。那么这篇博客主要讲解ArrayList的实现。见名知意,ArrayList首先是一个列表,它是靠数组去实现的。那么它和我们平时使用的数组最大的不同是它可以动态的去扩容。继承与实现体系public class ArrayList<E> extends AbstractList<E> implements Li原创 2021-07-17 20:48:49 · 85 阅读 · 0 评论