抖音电商-一面 凉透透经 攒攒人品

前面拿了一些小公司的offer, 做好准备后, 第一次面大厂, 投了字节的抖音电商, 3-4下午一面

上来先做了一个算法题--leetcode原题--螺旋矩阵

做过三次以上了, 但是一直很不擅长这种模拟题, 因为边界判断很麻烦。
第一次面试, 很紧张,大致写出来了,但是最后差一点边界判断,
因为前面不知道字节面试可以不用scanner实现通用的输入,所以一直倒腾这个输入,浪费了时间,面试官直接不给时间我搞边界判断了
(所以大家一定要先搞好Scanner输入各种数据结构,实在不会要及时确认能不能写死输入)

第二题面试官出了一个海量数据题: A,B大文件,各自有50亿行字符串, 每一个字符串占1KB, 系统最大内存1GB, 如何把两个AB文件中重复的字符串找出来写入文件中

经典海量数据题, 但是我没准备过这种题, 当时一直没想到:代码是建立在内存之上的, 在使用代码处理之前必须要先让数据大小<系统最大内存,所以一直在担心海量数据有什么特别的,可以说是毫无思路了。
事后系统学了一下, 基本思路就是:把A文件遍历读每一行字符串, 通过Hash(字符串)%n, 最后可以把A文件中的字符串分到n个子文件里面, 至于这个n,大家结合内存大小进行计算, 最后使得子文件大小<系统大小即可(因为子文件大小<系统大小,才能把子文件的数据放到内存去, 也就可以通过代码处理了), 对B文件采用同样的方式也得到n个子文件, 根据hash不同, 值一定不同的原理, 只需要对同序号的一对AB子文件进行求并集即可---先对A子文件把字符串都存入HashSet里面, 然后再遍历B, contains为true就存入结果文件, 把n对子文件处理完毕, 得到的结果文件就是所求。

第三题面试官言简意赅: 网络链路的优化(性能方面)

当时刚刚看完计算机网络自顶向下, 看到网络两个字, 就以为是设计网络, 就直接往计算机网络那五层的设计上面硬套了, 但是一时半会根本设计不出一个网络来。
事后搜了一下,仔细想了想当时面试官隐晦的话, 这题其实应该考的并不是对自己设计一个网络, 而是系统级别的如何提高性能,例如引入缓存来降低访问数据库提高系统性能,例如引入消息队列异步执行一些操作从而降低响应时间等。
可以说完全是一开始出发点就错了

失败总结:

  • 不要太紧张不要太紧张不要太紧张!也不要因为大厂所以就惧怕面试官!
    一开始那个Scanner输入就把我整得心态有点小炸了,后面更是脑子发涨,第二题有点思路,但是想着这是大厂,随便说一个思路可能不妥,就一直没说,事后发现其实思路是对的。
  • 审题审题还是审题!要善于发现面试官真正想问什么!
    后两题基本上可以说我的思考方向一开始就是错的,根本不知道到底在问什么。。。最后面试官给的建议也说这次的题目都是比较隐晦的,要善于去挖掘题目的本意。
  • 不确定的事情多问!
    一开始如果Scanner输入就问清楚可以不通用输入直接写死,可能面试时间会充裕很多。第二题如果确定了不是纯算法题,而是类似于场景题,可以思路也打开。第三题如果确定了不是在设计网络而是在提高系统性能,可能思路会开拓很多。
  • 思路要具有发散性,多去问为什么,怎么样实现的

最后稍稍吐槽一下,整体来说面试体验极其不好,之前我看面经大部分都是深挖项目+基础,最后写算法,结果这次上来就是算法题,虽然不难,但是心态小崩。然后面试过程中,面试官非常沉默,我问了大概两三次Scanner要通用输入吗,最后才跟我说可以直接写死,然后后两题说了思路了也没回应,不知道自己的思路对还是不对,就这样一错再错。。。
总而言之,还是要去锻炼发散思维,还是太菜了,发个凉经攒攒人品,希望日后有好offer!

#面经##电子商务##字节跳动#
全部评论
暑期实习的电商后端吗?怎么是问这种东西😨
1 回复
分享
发布于 2022-03-04 21:47
hxd你还投了什么公司呀
点赞 回复
分享
发布于 2022-03-04 22:47
联易融
校招火热招聘中
官网直投
xd我也是河海的,想问下算法题可以像力扣那样直接写方法吗?
点赞 回复
分享
发布于 2022-03-06 08:13

相关推荐

5 31 评论
分享
牛客网
牛客企业服务