分享一些奇葩面试题

#秋招遇到的奇葩面试题# 1. 面试官:“为什么myisam查询比innodb快?”
    我:“因为XXXX” 
    面试官:“最重要的你没说,MyISAM用hash索引”
    我内心:“MyISAM什么时候用过hash索引???”
2. 同一个面试官: “hash索引和b+树索引的区别”
    我:“hash索引查找复杂度O(1),但不支持范围查找”
    面试官:“你确定hash索引不支持范围查询吗?”
    我:“hash的特性决定了它没法做范围查询,因为他不能保证数据都是按顺序存储的”
    面试官:“我不这么认为”
    我 :“那如果hash查询又比b+树快,还能支持范围查询,那为什么mysql还要用B+树作为默认索引呢?”
    面试官:“你这是在反问?”
    我:“。。。。。”
    面试官:“你使用过hash索引吗?”
    我:“hash索引应用场景少,因为他不支持范围查询”
    面试官:“那我就要用hash实现范围查找怎么做呢?”
    我:“。。。。。”
3. 还是同一个面试官:“那hash索引等值查找为什么比b+树块?”
    我:“B+树查询时间负责度O(logn),hash查询复杂度O(1)”
    面试官:“hash查询复杂度真的是O(1)吗?他如果出现了hash碰撞呢?”
    我:“就算出现hash碰撞,也不会出现长度logn量级的链表,肯定是比B+树快的”
    面试官:“你怎么证明呢?”
    我:“。。。。。”
4. 另一个面试官:“TCP第三次挥手时出现异常情况会发生什么”
    我:“第三次挥手是服务端发送FIN给客户端,如果因为异常客户端没有正确接收到FIN报文,就不会返回ACK,服务器一段时间没有收到ACK会触发超时重传重新发送FIN,如果重传次数过多就会直接断开连接”
    面试官:“那第四次挥手出现异常呢?”
    我:“第四次挥手是客户端返回ACK给服务端,因为异常没有正确到达服务端,服务端由于没有接收到ACK,而它并不知道是FIN报文丢包还是ACK报文丢包,他一样会触发超时重传”
    面试官:“不对,你结束之后去查一下,我们就不纠结这个了”
    我:“。。。。。”
全部评论
面试官水平呼之欲出
26 回复 分享
发布于 2023-04-17 17:20 四川
mysql的话,hash索引是memory引擎才有的吧
11 回复 分享
发布于 2023-04-18 11:08 浙江
哪个瓜皮公司
10 回复 分享
发布于 2023-04-17 23:31 陕西
我的面试官不知道优先队列是堆,然后一直重复问我线程私有的那几个东西,气得我直接翻出面经给他看我没有背错,反手给我挂了
6 回复 分享
发布于 2023-05-16 21:08 北京
myisam底层是索引和数据分开的。select查索引直接一步完成。而InnoDB是索引和数据在一起。只能通过索引 查主键,再回表查一次。一个只查一次,一个查两次你说哪个快。再加上InnoDB还需要维护mvcc更慢了。还扯什么hash索引,我只能说6。
6 回复 分享
发布于 2023-04-20 03:03 辽宁
就是不懂又不愿意承认,我之前面试一个我说跳表查询复杂度logn,他非说nlogn…
5 回复 分享
发布于 2023-04-20 21:41 四川
这面试官是杠精吧
3 回复 分享
发布于 2023-04-17 17:16 河南
。。。。。看得我都无语了
2 回复 分享
发布于 2023-04-17 18:51 北京
。。。
1 回复 分享
发布于 2023-04-18 16:20 江苏
是不是实施岗位,我在b站看过那些面试实施的,问题就停水的
1 回复 分享
发布于 2023-04-18 12:04 广东
innodb都没有真正意义上的hash索引吧
1 回复 分享
发布于 2023-04-17 17:40 上海
会不会想让你说hash退化成链表成On了😂
1 回复 分享
发布于 2023-04-17 17:21 陕西
分享一个面试爬虫的过程:面试官:为什么md5不能解密。我:???不是定义的吗
点赞 回复 分享
发布于 2023-06-14 16:27 山西
垃圾公司,不去也罢
点赞 回复 分享
发布于 2023-06-10 16:46 江苏
我有一次碰到第三个直接手撕了20分钟😂,不过他最后让我过了
点赞 回复 分享
发布于 2023-05-31 17:15 河北
我的🐴呀,什么公司啊
点赞 回复 分享
发布于 2023-04-25 13:52 青海
我沉默了 我要是遇上了我感觉我要怀疑人生了
点赞 回复 分享
发布于 2023-04-18 17:54 江苏
确定一个数的hash值过程本来就挺复杂吧
点赞 回复 分享
发布于 2023-04-18 14:46 四川
。。。。。。
点赞 回复 分享
发布于 2023-04-17 17:08 陕西
。。
点赞 回复 分享
发布于 2023-04-17 16:58 浙江

相关推荐

2025-11-22 14:21
未填写教育信息 Java
程序员花海:实习太简单了 学历可以的 实习描述应该是先介绍业务 再介绍技术 技术咋推动业务的 做到了啥收益 有没有做实验 实验组和对照组有什么不同 你最后学到了什么 有没有参与处理过线上问题 有没有参与过公司的code review 有没有参与过技术分享 这些都是可以在实习描述中写的 并且实习和项目不一样不会撞车 应该放在最前面 放在教育背景下面 另外项目有点烂大街 可以看下我主页的简历优化案例
点赞 评论 收藏
分享
评论
41
45
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务