前言 使用链表实现队列,需要队首指向队列头部管理数据出对,队尾指向队列尾部管理数据入队。 具体实现 队列接口 public interface Queue<T> { /** * 元素入队 * @param t */ void enqueue(T t); /** * 元素出队 * @return */ ...
分类:
其他好文 时间:
2021-07-12 17:49:54
阅读次数:
0
一,创建线程池时,可能使用Excutors的四种方式。 newSingleThreadExecutor()和 newFixedThreadPool(int nThreads),内部实现队列为 LinkedBlockingQueue。LinkedBlockingQueue 是一个由链表实现的有界阻塞队 ...
分类:
其他好文 时间:
2021-06-02 15:01:54
阅读次数:
0
概述 本文是基于jdk8_271版本进行分析的。 Hashtable与HashMap一样,是一个存储key-value的双列集合。底层是基于数组+链表实现的,没有红黑树结构。Hashtable默认初始化容量为11,Hashtable也会动态扩容,与HashMap不同的是,每次扩容的容量是原容量2倍+ ...
分类:
编程语言 时间:
2021-06-02 10:43:44
阅读次数:
0
面试题 02.08. 环路检测 (Linked List Cycle LCCI) 给定一个链表,如果它是有环链表,实现一个算法返回环路的开头节点。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中 ...
分类:
其他好文 时间:
2021-05-24 16:16:28
阅读次数:
0
java.util.concurrent包下的新类。 实现接口:BlockingQueue LinkedBlockingQueue就是其中之一,是一个阻塞的线程安全的队列,底层采用链表实现。 LinkedBlockingQueue构造的时候若没有指定大小,则默认大小为Integer.MAX_VALU ...
分类:
数据库 时间:
2021-04-09 13:20:04
阅读次数:
0
内容摘自:数据结构与算法之美 链表 链表并不需要一块连续的内存空间,它通过“指针”将一组零散的内存块串联起来使用。 单链表 链表通过指针将一组零散的内存块串联在一起。其中,我们把内存块称为链表的“结点”。 为了将所有的结点串起来,每个链表的结点不仅要存储数据,还需要记录下一个结点的地址。我们将这个记 ...
分类:
其他好文 时间:
2021-03-08 13:20:35
阅读次数:
0
1.三者简述 HashMap:是Map的衍生,也是map接口的实现类,底层为:数组+链表实现(1.8加入了红黑树),以键值对的形式存储,根据hash函数来实现映射关系,HashMap用Key的哈希值来存储和查找键值对。当插入一个value时,HashMap会计算Key的哈希值然后把value和这个哈 ...
分类:
其他好文 时间:
2021-03-03 12:37:50
阅读次数:
0
1、String 这是最简单的Redis类型。如果只使用这种类型,Redis就像一个可持久化的Memcached服务器。 2、List Redis的List是基于双向链表实现的,可以支持反向查找和遍历。 常用案例:聊天系统、社交网络中获取用户最新发表的帖子、简单的消息队列、新闻的分页列表、博客的评论 ...
分类:
其他好文 时间:
2021-03-03 12:25:49
阅读次数:
0
HashMap介绍 hashMap是java中一个非常重要的数据结构,工作中也会经常使用到。 hashMap说明手册:https://docs.oracle.com/javase/8/docs/api/java/util/HashMap.html HashMap实现原理 HashMap的主干是一个E ...
分类:
编程语言 时间:
2021-02-19 13:42:09
阅读次数:
0
基本数据结构 双向链表 用数组模拟链表实现 ####双向链表初始化 l[1]=r[1]=0;r[0]=1; 结点1的左边和右边都是1,结点0的右边是1,为什么结点0会存在?因为后续元素有可能插入到结点1的前面 插入 #####将i插入到x的左边 x原本的左边为l 调整后的顺序为l,i,x 想象l和x ...
分类:
其他好文 时间:
2021-02-19 13:18:28
阅读次数:
0