面试涉及问题含有: Java JDK8新特性 集合(哈希冲突、HashMap的原理、自动排序的集合TreeSet) 多线程安全问题 String和StringBuffer JVM 原理、运行流程、内部结构 Linux 查询含有某字符串内容的命令grep 查询进程、GC状态、杀死进程 Hadoop五种 ...
分类:
编程语言 时间:
2018-09-09 00:38:47
阅读次数:
213
一.Put方法 情况一: 第一步:先取得hashCode值; 第二步:根据hashCode值取得hash值; 第三步:hash值取余得到一个下标i; 以上代码如下: 结果如下: 第四步:遍历下标位置的hash桶; 第五步:如果引用相等或equals相等,做一个替换; 2.点击上面hash进入下面 3 ...
分类:
其他好文 时间:
2018-08-31 10:48:17
阅读次数:
174
1.HashMap原理,内部数据结构? 底层使用哈希表(数组加链表)来存储,链表过长会将链表转成红黑树,以实现在O(logn)时间复杂度内查找 2.讲一下HashMap中的put方法过程? 对key求哈希值然后计算下标 如果没有哈希碰撞则直接放入槽中 如果碰撞了以链表的形式链接到后面 如果链表长度超 ...
分类:
其他好文 时间:
2018-08-19 14:01:50
阅读次数:
118
1.读过什么源码,说一些你读过的 2.排序的map有哪些 3.hashmap原理,如果它有一列特别长,怎么解决 4.说一些常用排序算法 5.一千万数,找前5个最大的,用什么算法 6.分支法应用在那些算法里面 7.说一些你知道的算法的复杂度,用在什么场景 8.sql索引怎么储存 9.b-tree和b+ ...
分类:
其他好文 时间:
2018-06-02 11:15:37
阅读次数:
194
类图 在正式分析HashMap实现原理之前,先来看看其类图。 源码解读 下面集合HashMap的put(K key, V value)方法探究其实现原理。 将上述HashMap实现插入数据的过程以插入4个数据为示例描述如下: 1.插入第一个数据时,初始化HashMap内部名为“table”的一维数组 ...
分类:
编程语言 时间:
2018-05-28 21:09:37
阅读次数:
227
基于Java1.7的 HashMap原理 1.基于哈希原理,存储key-value键值对(Entry)的集合。在JDK1.8以前数据结构是一个数组+链表,在JDK1.8以后是一个数组+链表+红黑树。(key,value,hash,next) 2.put方法原理:1)通过哈希函数计算key,得到哈希值 ...
分类:
其他好文 时间:
2018-05-11 14:34:40
阅读次数:
153
HashMap实现原理及源码分析 http://www.cnblogs.com/chengxiao/p/6059914.html 哈希表(hash table)也叫散列表,是一种非常重要的数据结构,应用场景及其丰富,许多缓存技术(比如memcached)的核心其实就是在内存中维护一张大的哈希表,而H ...
分类:
其他好文 时间:
2018-03-13 12:18:24
阅读次数:
208
HashMap HashMap原理? Hash是一个用于存储key value键值对的集合,每个键值对也叫Entry,这些Entry分散存储在一个数组当中,每个元素初始值都是Null,常用方法有put,get put原理? put(1,"A") 1)计算数组下标index=Hash(1)=hashc ...
分类:
编程语言 时间:
2018-03-04 10:37:44
阅读次数:
172
什么叫hash? 就是把一个不固定的长度的二进制值映射成一个固定长度的二进制值。 hash算法:就是对应的这个映射规则。hash值:固定长度的二进制值。 什么叫hash表?HashMap底层的存储结构就是hashtable。 什么是hash算法? 1、除留余数法(应用于根据key找到hash表的in ...
分类:
其他好文 时间:
2018-02-26 17:42:42
阅读次数:
163