贝壳Java实习一二面面经
一面(40min,5.13)
1. JVM的内存模型,为什么这么设计?
2.简单介绍垃圾回收
3.怎么判断对象已死?
4.GC Roots、根搜索算法、引用计数法的缺点
5.volatile关键字,什么情况下不能重排序
6.HashMap底层实现,什么适合扩容
7.ConcurrentHashMap的底层实现,在JDK1.7和1.8中的区别
8.Redis的基本数据类型,Zset的使用场景、底层实现、简介跳跃表
9.简介ES
10.数组的最长升序子序列
11.队列实现栈
12.堆排序(简述)
二面(40min,5.13)
1.Java是怎么实现一次编译,到处执行
2.什么是倒排索引
3.HashMap什么情况下扩容,怎么扩容
4.负载因子过大过小会怎么样?
5.如果初始化一个HashMap时,指定长度为13,那底层的数组长度是多少?
6.给定两个存储字符串的大文件,他们都不能全放进内存,怎么求共有字符串
7.上述问题,文件中改为存储数字,怎么求共有的数字
8.一个数组中除了一个数字外其他的数字均出现了两次,怎么求这个这个数字如果出现三次呢(剑指offer原题)
9.二叉树的直径
相对来说比较基础,有一些记不起来了。求个offer#贝壳实习##贝壳找房##Java工程师##实习##面经#