快手 java 社招面经

快手java一面面经
1.要不先做下自我介绍?说一说你最近做的那个项目?然后针对简历提了几个问题。你哪年生的啊?我看你简历上没有。

2.我看你简历里面说做过mysql的优化,说说你都做过哪些优化或者优化的思路?
数据库的索引了解吗?说一下索引的原理?聚集索引和非聚集索引了解吗?了解mysql的回表吗?
mysql实现分布式锁了解吗?还有没有其他更好的方式?

3.说一下事务的一些东西?你对事务的了解有哪些?说说数据库的乐观锁和悲观锁?

4..Redis有哪些持久化方式?你们在项目中一般怎么做持久化?如何实现集群和高可用?

5.Java中有哪些锁?synchronized与Lock有哪些区别?什么是公平锁和非公平锁?他们的底层怎么实现的?
AQS原理了解吗?能不能详细介绍一下?

6..说一下线程池的原理?ExcutorService下的四种线程池分别用在什么场景下?为什么单线程池和固定线程池使用的任务阻塞队列是LinkedBlockingQueue(),而缓存线程池使用的是SynchronousQueue()呢?

7.说一下violate关键字吧?刚才你提到可见性?他是如何保证可见性的?

8.说一下GC吧,什么时候进行Full GC呢?你了解哪些收集器?CMS和G1。详细谈谈G1的优点

最后写了一个编程题。
给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。

百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”

例如,输入: root = [6,2,8,0,4,7,9,null,null,3,5], p = 2, q = 8
输出: 6
解释: 节点 2 和节点 8 的最近公共祖先是 6。

示例 2:

输入: root = [6,2,8,0,4,7,9,null,null,3,5], p = 2, q = 4
输出: 2
解释: 节点 2 和节点 4 的最近公共祖先是 2, 因为根据定义最近公共祖先节点可以为节点本身。

这个是leetcode原题。

写完面试官问方便来北京现场面试吗?你还有什么想问的?后续有什么消息hr会通知你。

紧接着就约了二面

二面比较注重设计

面试官上来就让设计了一个小型的社交系统。从数据库设计开始,然后设计架构。这个花了很长时间。
然后问了下dubbo的原理,有没有看过dubbo源码?dubbo的容错机制?
然后又是写题了
是股票买卖的一道题
给定一个整数数组,其中第 i 个元素代表了第 i 天的股票价格 。

设计一个算法计算出最大利润。在满足以下约束条件下,你可以尽可能地完成更多的交易(多次买卖一支股票):

你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。
卖出股票后,你无法在第二天买入股票 (即冷冻期为 1 天)。

示例:

输入: [1,2,3,0,2]
输出: 3
解释: 对应的交易状态为: [买入, 卖出, 冷冻期, 买入, 卖出]
最后还是有什么想问的?#快手##社招##Java工程师##面经#
全部评论
方便问一下是快手的那个部门吗?
1 回复 分享
发布于 2021-11-03 20:18
请问快手卡学历吗
1 回复 分享
发布于 2020-04-24 02:53
过了吗
1 回复 分享
发布于 2019-11-14 10:09
想问一下,后续还有几面呢?
1 回复 分享
发布于 2019-11-02 13:00
楼主工作了几年啊
1 回复 分享
发布于 2019-11-02 10:28
楼主快手面试过了吗
2 回复 分享
发布于 2019-11-05 17:05
感谢分享!欢迎参加过社招的牛友分享面经,领取京东卡~~ -------------------- 活动:社招面经征集|参加过社招的牛友,来发面经吧,拿京东卡
点赞 回复 分享
发布于 2019-11-04 14:13

相关推荐

04-03 21:44
已编辑
门头沟学院 Java
发面经攒人品1. 自我介绍2. 询问项目3. 说说布隆过滤器的原理4. 了解分布式锁其他的一些实现方式吗?5. 了解lua 脚本吗?6. 会写lua脚本 吗 ? 口述下用lua脚本实现拿到分布式锁的功能7. 问实习8.假设我有一个任务,需要跑10000条case,去调用外部服务。我们应该怎么设计才能让他跑的又快又稳?9. 那我肯定是要等所有case都结束了之后,才能把咱们这个任务标记为结束对吧?  怎么设计去实现呢10.说说ArrayList,扩容机制?11. 它是线程安全的吗?12. 线程安全的集合有哪些?13. 实现线程创建的方式有哪些?14. 线程是通过 run 方法 还是 start方法启动的? 两者有什么区别?15. 不管咱是继承Thread还是实现runnable或者callable,咱们可能要通过start去启动,但是在代码里不太优雅,有什么比较优雅或者合理的方式去创建或者启动一个线程吗?16.创建线程池平时用什么方法?有哪些线程池17. 说说垃圾回收算法18. 哪些对象是GC Roots?19.Thread local 底层结构是什么?20. ThreadLocal 的哈希冲突和hashmap的哈希冲突解决方法是不一样的,这个你了解过嘛?21.ThreadLocal的一些应用场景有哪些?22.聊聊事务的原理23.了解事务的隔离级别嘛?24.了解过MVCC嘛?25.分布式的持久化机制有哪些?26. RDB和 AOF哪个是可读的?27. RocketMQ如何保证消息顺序消费?28.了解其他MQ嘛?29.问了下论文情况和实习多久无手撕晚上八点面的 当晚就挂了
查看29道真题和解析
点赞 评论 收藏
分享
hjl别看我了我是菜...:测评挂应该是借口,我笔试三题A2题都进面了
点赞 评论 收藏
分享
评论
11
185
分享

创作者周榜

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