2020 阿里巴巴和字节跳动面试总结

字节跳动

截止到11-20号,字节跳动一共面了七轮(挂->捞->挂,一般来说技术在3-5面),现在还在流程中。

字节跳动最大的特点就是每一轮最后都有笔试题。很考验选手心态,很多上周的穿山甲三面就是因为笔试影响了心态导致后面连环爆炸。

字节目前大部分均为GO,因此Java问的较少,这是和阿里最大的区别

技术类问题

  • 缓存失效的一瞬间如何防止大量请求打垮应用?
    解法1:守护线程为缓存续期
    解法2:二级缓存错开过期时间
    解法3:为数据库访问做令牌,拿到令牌的才可访问数据库

  • Redis缓存淘汰策略
    对这块不太熟悉,但是粗略想来和操作系统里的页面置换算法应该异曲同工

  1. 最优页面算法。根据页面的使用频率来进行置换,但并无可行性。因为操作系统无法判断页面的使用频率。
  2. NRU。 分为R位和M位,启动时均为0。操作系统会定时将R位置零,区分近期使用的页面。0: R=W=0, 1: R=0 W=1, 2: R=1 W=0, 3 R=W=1。算法会随机从编号最小的非空页挑选一页淘汰。FIFO。最早进入的页放在队头,缺页中断时,移除队头,加入队尾。
  3. 二次机会。基于FIFO,不过在移除时,如R位为1,置零,加入队尾,继续查找。
  4. 时钟算法。二次算法的循环链表形式。
  5. LRU。淘汰近期未被使用的页面。要求硬件有一个64位计数器C,在每条指令执行后自增。每个页面也需要有能容纳该计数器值的域。
  6. NFU。软件模拟LRU。每次时钟中断时,计数器加上相应页面的R值。可以大致纪录页面的访问频率,被称为NFU(not frequently used)。
  7. 老化算法。对NFU进行小小修改即可模拟LRU,在每个时钟周期对计数器进行右移操作,推入R值。在缺页中断时,移除值最小的页面。
  8. 工作集算法。一个进程在过去n秒中访问到的所有页称为一个工作集。(前提:人们发现进程并不会访问所有的页。)时钟中断会定期清空R位。每个页在使用时会纪录当前时间,但扫描时,算法根据R值与时间差来判断是否需要置换。最坏的情况下,无可置换页面,则随机选择,一般选择“干净”的页面,即W=0。
  9. 工作集时钟。如R=1,则R=0,检查下一页。如R=0且已过时,再看W值,如W=1,为防止调度写磁盘引起的中断,则继续向后,直到找到一个干净页面。如W=0,说明页未修改,在磁盘中有有效副本,则申请页框,将新页面放入其中。最大移动N次,即一圈。会出现两种情况,至少调用一次写操作,那么就有干净页面存在,否则随机找一个干净页面置换,如无干净页面,将当前指向的页面写入磁盘。
  • 分布式锁的实现
    Redis,但CAP中REDIS并不支持C。ZK可以解决这一问题

  • 数据库索引的数据结构,优点
    B+ 树,范围遍历及低层级可以减少离散IO

  • MySQL中事务的隔离级别
    四个级别要简单说下。其中Innodb下RR是如何解决幻读的也要提一下。间隙锁及MVCC。

  • RedoLog, BinLog, UndoLog 区别及作用

  • 有无听过逃逸分析
    标量替换,锁膨胀,锁消除,栈内分配等

  • 有无通过拥塞控制,聊一下其原理
    TCP拥塞控制。BBR等

  • 间隙锁上锁细节
    确认过眼神,是极客时间的同班同学哈哈哈哈哈。

  • 乐观锁与悲观锁
    简单聊一下,扩展到CAS,然后是ABA问题,如何解决?版本号。

  • ConcurrentHashMap实现原理
    分段锁及CAS,其他同HashMap

  • ReentrantLock 源码实现

  • HashMap 源码实现

  • 调表、布隆过滤器(布谷鸟过滤器)

项目类问题

项目类问题大致分为以下几种

  • 聊一下项目架构

  • 聊一下解决过哪些问题

  • 自己在团队中的角色,团队在公司的角色,当前工作在公司中的定位等等

  • 项目细节,会根据说的东西提出一些疑问,对做的不好的地方做优化等等

  • 技术选型类问题

  1. 外包项目以客户环境优先。
  2. 功能得满足
  3. 看有无成功生产考验为其背书
  4. 社区环境,是否仍在维护,换句话说,出了问题,可有人帮你找纸擦屁股
  5. 开发语言(小公司不用考虑,大公司会考虑自维护)

设计类问题

  • 抢红包
    几个要点:
    请求抖动。请求的Set化。对请求做消息队列防止打垮服务器

  • 设计一个定时任务系统

  • 钉钉的消息已读未读,如何设计该功能对应的数据结构

  • 如何实现断点续传
    文件分块+校验码

算法类

  • Top K 问题的时间复杂度;如果内存足够,能否优化其时间复杂度
    小根堆,n(logk)。后面一问没想出来

  • 二维数组,向左递增,向右递增,最优解
    第一反应是依赖有序特性二分查,横竖交替。但不对

  • *** 2 x N的空间,使用1 x 2的矩形填充,共有多少种方式***
    标准动态规划,状态转移方程式:dp[n] = dp[n-1] + dp[n-2]。
    就是这题还有上面那题把我心态弄慌的QAQ,差点过了,太可惜了

  • 求数组中最大山脉数组的长度

  • 有向图中,求起点到任意一点的最短路径长度
    DFS或者BFS,然后DP优化一下

阿里巴巴

截止到11-20号,阿里一共面了六轮,其中支付宝给的评级是P5,但社招并无该级别的HC(简单来说就是挂了QAQ),而且支付宝的面试没有问技术,全程问项目。中间被菜鸟鸽了一波,企业事业部虐了一波,目前在走淘宝特价版的流程。

想进阿里,我觉得要么学历好(重点大学本/硕/博或者海龟),要么有开源贡献或者博客质量高,或者是走边缘部门。最重要的一点,履历得好,不能频繁跳槽,最好能有知名互联网搬砖经历(比如携程[狗头])

技术类问题

  • 创建线程池的参数
    CPU密集型和IO密集型的设置区别及原因

  • GC算法
    引用计数法。可达性分析(三色标记)。标记-清除。标记-压缩。

  • 如何解决频繁GC
    这个问题其实在问什么情况下会触发GC

  1. System.gc();
  2. jcmd 也可以触发
  3. Young区无可用空间
  4. Young晋升至Old时无足够空间
  5. 永久代满:常量池、类数据(动态代理类)

HR类问题

  • 为什么考虑换工作(我是两年经验一年一跳)
  • 职业规划,目前还欠缺什么
  • 如何看待工作
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,189评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,577评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,857评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,703评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,705评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,620评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,995评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,656评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,898评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,639评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,720评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,395评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,982评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,953评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,195评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,907评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,472评论 2 342

推荐阅读更多精彩内容

  • ● 如何打印二叉树每层的节点? 考察点:二叉树 参考回答: 实现代码: import java.util.Arra...
    le_u阅读 470评论 0 0
  • 黑色的海岛上悬着一轮又大又圆的明月,毫不嫌弃地把温柔的月色照在这寸草不生的小岛上。一个少年白衣白发,悠闲自如地倚坐...
    小水Vivian阅读 3,093评论 1 5
  • 渐变的面目拼图要我怎么拼? 我是疲乏了还是投降了? 不是不允许自己坠落, 我没有滴水不进的保护膜。 就是害怕变得面...
    闷热当乘凉阅读 4,233评论 0 13
  • 感觉自己有点神经衰弱,总是觉得手机响了;屋外有人走过;每次妈妈不声不响的进房间突然跟我说话,我都会被吓得半死!一整...
    章鱼的拥抱阅读 2,168评论 4 5
  • 夜莺2517阅读 127,709评论 1 9