度小满面试 Java 之反手挂系列面经
前言
前几天收到度小满 HR 的电话,说要安排我面试。一天后收到短信和邮件,用的是赛码网的视频面试。时间是 9.28 17:00。
然后我当天正在回寝室的路上的时候,15:53 来了一条短信,说,度小满的面试已经开始,于是我不紧不慢地回到了寝室,16:00 准时地提前一个小时打开链接,两分钟后,面试官也进来了。真·提前面试系列。
我当时还在开心,终于不用在五点面试,然后面完去和别的人挤食堂了。
面试
开头
我这边没有你的简历,我需要你上传一下你的简历。
我:???没有简历你面试毛线??不过还是给他上传了我的简历。
好的,你先做个自我介绍,我看看你的简历。
好了,你的项目你说说。我:balabala
我:balabala
Redis
哪些数据结构。
SortedSet 和 Set 和 List 的区别。
SortedSet 怎么实现排序的。(这里可能说得不算好)。
Java
集合类
TreeMap、HashMap、hashtable 的区别和底层数据结构。
HashMap 的底层是怎么样的,默认大小是多少。
HashMap 为什么转红黑树。
HashMap 是线程安全的吗,那怎么做到线程安全。
ConcurrentHashMap 线程安全的原理。
JVM
你说说你 JVM 的内存这块的了解。
GC 的回收算法有哪些。
收集器的类型有哪些。
CMS 和 G1 的区别。(没说全)。
怎么判断对象存活。
怎么看线程运行的状态数据。(没说出来)。
Linux
常用命令你知道哪些。
怎么统计一个文件的某词的出现次数。(不会,就说了 grep,Linux 还是是弱项)。
数据库
数据库索引是什么和是怎么样的。
复合索引的一个常问匹配原则,比如建立 (a, b, c) 然后查 a,查 b, c,查带算术的。(后来再去看看,发现有个小地方说错了)。
数据库引擎你知道什么,区别是什么。
MyISAM 和 InnoDB 的区别和使用场景。
一道 SQL 题目
User(id, name, score)
查重复出现的 name。(这题我不知道有没有写对,算写对一半吧)。
查成绩第二高的人。(只会查前两个高的,第二高不会)。
手撕算法
跳台阶算法(一次跳 1 或者 2 级台阶,问多少跳法)。我先用递归写出来了,然后要我用非递归,还是很快写出来了。
括号合法性匹配问题(大中小括号不能乱序嵌套,要符合闭合条件)。(当时写得很快,挺自信的,现在一回想,遍历完后忘记判断了总的合法性直接 return true 了,有点瑕疵。我觉得面试官也没想到这点?)。
其他
嗯好,大概几分钟内就会出结果。短信的方式通知你。
最后
我以为过了,毕竟我自己感觉良好,等二面中。结果两分钟后,感谢信来得比谁都快。
我可 QTMD。
度小满你去面你的吧,连个简历都没有面试毛线,爱谁谁去面。我也看到好多面完反手挂的人。我可浪费了面试官的时间哦。
面完度小满五分钟后招银来电面了,20min 面完。毕竟面试前心情不好,可能就没过。气人。回头吃完发面经。
#度小满##Java工程师##面经##校招#