快手一二面

引流一下博客:https://blog.codewinner.top/articles/kuaishou-20230819/

https://blog.codewinner.top/articles/kuaishou-02-20230828/

一面(2023.08.19)

问的八股都算比较常规的,基本是对着简历问,项目面试官比较感兴趣,说的时间比较长。

1、面试官介绍

2、自我介绍

3、HashMap的结构,扩容机制,链表扩容和数组扩容分别发生在什么场景?加载因子多少的时候扩容?每次扩容几倍?多线程情况下HashMap会有什么问题?如何解决?

4、CuncurrentHashMap的结构,上锁机制。

5、为什么CuncurrentHashMap从1.8开始要采用CAS?你能说说CAS的流程吗?CAS会有什么问题?如何解决ABA问题?那数据库可以添加一个版本号这种方法,Java的CAS怎么避免ABA呢?

6、两个线程访问一个资源,你有什么办法避免资源竞争,知道的都说出来。你提到了ReentrantLock,他的结构是怎么样的,为什么可重入?你说里面使用了AQS,说说AQS的结构?AQS是怎么进行加锁的,指令是什么?

7、说一下JVM的内存结构?每一个部分都用来干什么?堆可以分为几个部分?垃圾回收的算法有哪些?垃圾收集器有哪些?都是什么流程,有什么特点?你使用过哪种,有配置过吗?

8、你平时用MySQL都用的什么引擎?InnoDB相对于别的引擎有啥优势?事务的隔离级别有哪些?各个级别都能解决什么问题?InnoDB使用的什么?能解决幻读吗?为什么?MVCC的原理是啥?undo log的数据结构是什么样的?

9、索引按照数据结构分类有哪些?分别都什么结构?各有什么优势?B+树效率高还是Hash效率高,为什么采用B+树?索引有哪些分类?联合索引知道吗,构造的B+树里面是怎么样的?如果执行这一条查询语句会走索引吗,为什么?

10、你的低代码平台用了Redis,里面用Hash来存储结构,说说你的key、Field都是怎么设计的?Hash的底层结构长什么样?各自都长什么样?Dict的扩容是怎么样的?Zset结构是什么?

11、你做过一个通信系统,能讲讲你用的什么框架吗你的项目结构能否介绍一下?为什么要用线程数组而不用线程池?消息转发是如何实现的?你能介绍下你的IO多路复用用到操作系统什么机制吗?epoll听过吗?

12、为什么要设计心跳机制?心跳谁来发?服务端对于没有收到心跳包的用户如何处理,怎么判断有没有收到心跳包?快手的直播平台,每一台机都有10w用户,让你来设计一个心跳机制,我给你两个方案,你说出优缺点,你会选择哪个

  • 对每个用户单独一个定时任务,分散发送心跳。
  • 对所有用户用一个定时任务。

13、算法题:给你一个value和error,求value的平方根,要求 | 计算值 - 真实值 | <= error。使用二分查找答案即可。需要注意value小于1和大于1要分别处理。

总体大概一个半小时,问的大多是基础问题,也基本回答上来了。

二面(2023.08.28)

1、面试官介绍。部门是直播技术部。

2、自我介绍。

3、说说你的聊天系统的架构(基于Reactor),具体的实现逻辑,你的架构相较于其他的架构优点是什么?为什么能同时维护多个连接?NIO的实现方式?这里还有些项目相关问题,大概问了十几分钟。

4、算法题。两个数组,从A和B各取一个元素,求出绝对值最小值。这里大概十分钟。

5、给了几个SQL语句,分析如何构建索引,查询索引执行的流程,大概需要的耗时,还有些零碎问题记不得了。这里的耗时我不理解,面试官问有3000w条数据,查出来是个位数,然后用的单个字段的索引,大概要多长时间,这个要我估算?有懂的老哥可以评论区解答下谢谢。这里大概十分钟。

6、知道什么数据压缩算法吗?讲讲哈夫曼编码,哈夫曼编码的理念是什么?

总体大概40分钟,比一面问题少很多,问的问题大多都答上来了,就是感觉问的有点少,希望不是不想问了就结束了,给双非鼠鼠一个机会吧。

全部评论
一二面隔了多久通知的
1
送花
回复
分享
发布于 2023-08-28 14:28 广东
楼主二面手撕题的两个数组是排好序的吗?
点赞
送花
回复
分享
发布于 2023-08-28 19:50 陕西
秋招专场
校招火热招聘中
官网直投
老哥,还有三面吗?
点赞
送花
回复
分享
发布于 2023-08-29 09:06 辽宁
算法题思路是啥 能讲一下吗
点赞
送花
回复
分享
发布于 2023-09-15 23:16 湖北
hxd有约hr面吗?我也是8月底二面,现在没挂我,但也没有后续流程安排
点赞
送花
回复
分享
发布于 2023-10-24 17:14 广东

相关推荐

头像
05-18 07:20
已编辑
快手_java(准入职员工)
#牛客帮帮团来啦!有问必答#先介绍一下本人的背景吧,目前是武汉某985的大四学生,软工专业。现在也拿到了快手的java开发offer签了三方,然后考研本校也成功上岸了。其实我不是很想考研,因为我知道自己其实就是一个混子,但是架不住身边人保研的保研,考研的考研,以及父母无形之中一直施加的压力,让我去考研。最终还是选择了报考本校的专硕。考研结束之后,自己也去投了很多简历,但是由于自己之前只有一段小厂两个月的实习,再加上刚考完研也没有看多少八股,秋招一直被各种吊打,我印象特别深的就是京东的面试官,特别温柔的提醒我再去好好的看看java基础😂所以也灰心了一段时间,打算就去混个研究生学历,再认真学习算了。最离谱的是,我人生第一次面试,就是阿里的淘天,当时是电话面试,近一个小时,我都能明显的感觉到面试官红了😂😂面完之后,我自己也是满脸通红。但是由于毕业设计的缘故,我最开始选择了深度学习方面的内容,做起来才发现一无所知,导致我对研究生能不能顺利毕业都产生了疑问,也看透了自己没有学术头脑,所以又开始下定决心找工作。春招就开始了疯狂投简历,恶补八股,最终也拿到了一些offer。但是当我拿着offer无论是和父母还是一些朋友分享,同时表达自己想要去工作的想法时,几乎没有人支持。虽然说起码像是在贬低自己,但是鉴于本人对自己的了解,如果读研的话,研究生两年大概率会是混过去,毕业之后应该还是找开发的工作,所以我自己更倾向于直接工作,如果工作不顺,再重新去读研。但是父母朋友也不断的告诉我,读两年研很快就过去了,到时候一定比现在更好,起码不会有学历焦虑,这也让我产生了动摇,我自己也有一点开始害怕就业会出现试用期被卡的问题,特别是脉脉,越刷越心寒。所以我现在真的不知道该怎么抉择了。引流:秋招、实习、补录、春招、腾讯、阿里、华为、字节、美团、中兴、百度、北京、成都字节跳动,海康威视,深信服,腾讯,阿里巴巴,拼多多,滴滴,京东,小米,大疆,美团,好未来,小红书,华为,简历,offer,面试,面经,三方,国企,央企,秋招,应届生,求职,比亚迪,建设银行,工商银行,百度,中兴,邮储、中行、建行、工行、建行、光大、招商银行、科大讯飞、蔚来、新华三、京东方、容 #你会选择考研还是直接就业#
点赞 评论 收藏
转发
2 24 评论
分享
牛客网
牛客企业服务