首页 > 回馈牛客,分享手撕算法题——字节、快手、京东、腾讯
头像
墨痕。
编辑于 2020-09-19 10:57
+ 关注

回馈牛客,分享手撕算法题——字节、快手、京东、腾讯

楼主985本,双非硕。秋招开始以来前后面了字节、京东、快手、腾讯和阿里五家,前三个已经拿到了意向书,AT也在等意向书,准备结束秋招了。在准备秋招期间,牛客论坛对我有很大的帮助,所以想总结一点秋招的经验和遇到的手撕算法题来回馈牛客。

经验:

其实也谈不上什么经验,只是说一下我感觉对我秋招有帮助的事情吧。

首先,很重要的一点就是秋招投递要尽早,能投提前批的话一定要投。我京东和快手都是投递的提前批,没有参加笔试。虽然不参加笔试的话,面试中仍然会问算法题。但是感觉面试中遇到的算法题没有笔试那么多妖路子,都属于比较常规的题目,而且有面试官给提示,也会简单一些。而且提前批HC较多,相对来说也不太会因为HC而挂掉。

其次,尽管很多人吐槽公司考手撕算法题以后根本不会用到,但是毕竟形势所迫。如果能把算法题秒了,真的会很加分。所以建议有空的时候还是要多刷刷题,特别是LeetCode的热题和剑指offer的题。我只刷了400多道题,在面试中就遇到了好几道原题或者类似的题。

最后的话,由于我投递的都是后台开发或者基础平台之类的岗位,所以感觉底层基础还是很重要的,包括但不限于操作系统、计算机网络、体系结构、数据结构和算法之类的。甚至偏基础的岗位还会问操作系统内部实现之类的问题。

手撕算法总结:

1、 字节跳动:

字节跳动其实不是我主动投递的,是春招一面挂之后,又被数据中台的部门捞起来了,所以连带着春招遇到的算法题一起总结了。

春招:类似LeetCode 72.编辑距离

秋招:
一面:

1)有一个字符串,判断QWER出现次数是否相同。

2)如果次数不相同,如何修改可以让他们相同。

二面:

设计一个可动态扩展的字符串类,尽可能降低占用空间和时间复杂度。
三面:

设计一个带TTL的容量有限的hash map,在TTL=0后从map中移除。在装满后,如果还有元素进入,将TTL最小的元素移除。

2、 快手:

一面:

(1) 链表反转。

(2) 二路归并。

二面:LeetCode 42.接雨水

其实自我感觉二面基础问题答得并不好,可能就是算法题做的不错救了我。

3、 京东:

一面:

(1) 一个用hash map统计的题,具体的记不清了。

(2) K个一组,反转链表。

4、 腾讯:

一面:

1)按照左根右根的方式序列化二叉树。

2)根据(1)的序列,反序列化一颗二叉搜索树。

面委:

(1) 判断链表是否有环。

(2) 二分查找。

(3) 子集问题。

(4) 逆序数对问题。

(5) 反转链表。

阿里可能是因为春招笔试全AC了,又在阿里实习过一段时间,并没有遇到手撕算法题。主要问了项目和基础相关的问题。

楼主参加的面试也不是很多,也只能总结出这些东西了,希望能对牛友们有些帮助。祝各位牛友早日拿到满意的offer。也许愿自己早点收到腾讯和阿里的意向书。

更多模拟面试

全部评论

(3) 回帖
加载中...
话题 回帖

相关热帖

近期热帖

近期精华帖

热门推荐