百度-Java开发-一面+二面凉经
周四下午面的,有些题目忘了
1、自我介绍
2、Java中==和equals
3、String类的equals源码有没有看过?(没有)
4、猜测一下String类的equals的原理
5、hashcode方法
6、hashcode相同的话对象是相同的吗(晕了回答错了,应该是不一定)
7、HashMap底层原理
8、redis持久化
9、rdb和aof对比优缺点
10、aof重构(?记不清了,也是没听说过)和aof重写
11、索引的优缺点
12、回表
13、覆盖索引
14、最左匹配原则
15、什么情况适合使用索引?什么情况不适合索引?
16、索引下推
17、InnoDB为什么使用B+树结构作为索引而不是哈希
18、如果有序数组作为索引呢?(晕了也没答上来,面试官提示了增删会比较麻烦才恍然大悟)
19、接上二叉搜索树和平衡二叉树
20、B+树叶子结点的大小有什么特点?(我只记得跟InnoDB页大小有关,面试官说是页大小的整数倍)
21、接上,为什么是整数倍?(不清楚)
22、消息队列的消息可靠性
23、手撕:剑指 Offer 15. 二进制中1的个数
写了一版常规的,叫分析一下时间复杂度,然后叫我想一下怎么优化到O(1),提示用空间换时间。我就写了个O(32)的思路,倒是没理解面试官的意思。他说可以预处理建立映射表,然后对输入的数直接取值。
更新二面:
全程问项目,感觉都是在闲聊,我以为会问中间件相关的,结果说了一大堆也没懂什么意思,还叫我现场画什么图。
还问了一些科研方面的,我说了一大堆感觉对方也没听明白。
也没有做题,问了几个操作系统,我答了个七七八八,感觉他不是很满意说得不清楚,就着急结束了。
结果第二天就共享了,感觉什么也没问明白就挂了。
求捞一手。