LRU 算法描述 LRU 算法实际上是让你设计数据结构:首先要接收一个 capacity 参数作为缓存的最大容量,然后实现两个 API,一个是 put(key, val) 方法存入键值对,另一个是 get(key) 方法获取 key 对应的 val,如果 key 不存在则返回 -1。 注意哦,get ...
分类:
编程语言 时间:
2020-04-17 23:27:31
阅读次数:
179
Spring中的SpringUtils Spring提供的工具类,主要用于框架内部使用,这个类提供了一些简单的方法,并且提供了易于使用的方法在分割字符串,如CSV字符串,以及集合和数组。 StringUtils提供常用的方法如下: 判断对象对象是否为null或者空字符串 判断给的序列是否为空或者le ...
分类:
编程语言 时间:
2020-04-17 09:48:36
阅读次数:
233
YARN 调度器 1、FIFO(先进先出调度器) 单队列,任务独占所有资源,先进先出; 优点:简单不需配置; 缺点:大集群中大小任务都会阻塞; 2、Capacity(容量调度器) 多队列(单队列FIFO),支持配额,弹性队列,延迟调度(等待别的队列容器释放而非抢占) 优点:相比FIFO更适用于集群 ...
分类:
其他好文 时间:
2020-04-16 13:05:12
阅读次数:
74
某天上服务器看了下gc情况,发现状况不对,启动了才2天的服务器发生了360次fullgc,这个频率肯定高了 说明 S0C、S1C、S0U、S1U:Survivor 0/1区容量(Capacity)和使用量(Used) EC、EU:Eden区容量和使用量 OC、OU:年老代容量和使用量 PC、PU:永 ...
分类:
其他好文 时间:
2020-04-16 00:24:58
阅读次数:
254
vector(向量) 连续存储结构,每个元素在内存上是连续的;支持高效的随机访问和在尾端插入/删除操作,但其他位置的插入/删除操作效率低下;相当于一个数组,但是与数组的区别为:内存空间的扩展。 vector首先分配一个非常大的内存空间预备进行存储,即capacity()函数返回的大小,当超过此分配的 ...
分类:
编程语言 时间:
2020-04-12 21:01:32
阅读次数:
93
一、前言 1.本文基于JDK1.8源码分析,会贴出涉及的相关数据结构及源码。 2.为节省大家时间,先给出结论。 1)ArrayList创建对象时,若未指定集合大小初始化大小为0;若已指定大小,集合大小为指定的大小; 2)当第一次调用add方法时,集合长度变为DEFAULT_CAPACITY(也就是1 ...
分类:
其他好文 时间:
2020-04-02 17:35:30
阅读次数:
60
HashMap有扩容机制,就是当达到扩容条件时会进行扩容。HashMap的扩容条件就是当HashMap中的元素个数(size)超过临界值(threshold)时就会自动扩容。在HashMap中,threshold = loadFactor * capacity。 每次扩容会重建hash表,导致性能下 ...
分类:
其他好文 时间:
2020-04-02 01:22:59
阅读次数:
89
/* 默认初始化是10 */ private static final int DEFAULT_CAPACITY = 10; /* 空数组 */ private static final Object[] EMPTY_ELEMENTDATA = {}; /* 用于默认大小空实例的共享空数组实例 */ ...
分类:
其他好文 时间:
2020-03-30 00:25:06
阅读次数:
79
1,创建一个空栈,并向栈中压入1个元素 1 #include<stdio.h> 2 #include<stdlib.h> 3 4 #define CAPACITY 100 //栈的容量 5 #define SIZE 10 //如果栈需要扩充,每次扩充10 6 7 //定义栈 8 typedef st ...
分类:
其他好文 时间:
2020-03-22 22:24:57
阅读次数:
78
创建一个新的HashMap集合 /初始默认数组的大小static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; // aka 16//最大容量static final int MAXIMUM_CAPACITY = 1 << 30;//默认的负载因子stat ...
分类:
其他好文 时间:
2020-03-17 19:16:28
阅读次数:
70