字节TikTok暑期实习一面二面三面面经(以OC)

字节TikTok暑期实习一面二面三面面经(以OC)

  • 字节TikTok暑期实习一面二面三面面经(以OC)
    • 之前面试汇总题
    • 字节一面(4月23日 4:00)
    • 字节二面(4月23日 5:00)
    • 字节三面(4月23日 6:00)
    • 最后

字节TikTok暑期实习一面二面三面面经(以OC)

本人现在大三,在大二的时候因为年少无知投过字节,但是笔试就挂了,在今年的时候字节hr给我打电话问我有没有兴趣投一下字节,更新一下简历,因为之前没有进行面试过,所以约到了4月23号进行面试,给了我一个多月的准备时间,在这期间,我面了三次腾讯、一次快手、一次百度,但是都被挂了,开始我都要放弃了,23号之前巨焦虑,天天疯狂看面经,好在结果是好的,现在来回馈牛客,希望大家都能够成功上岸。

之前面试汇总题

我具体记不清楚哪个题是哪次面试的了,这里进行一下汇总,希望对大家有帮助

  • 面向对象的三大特征
  • 如何理解Java多态
  • Java修饰符有哪些,区别是什么(default、private、protected、public)
  • Java final字符修饰到变量、函数和类的区别是什么
  • static如何使用
  • 抽象类和接口的区别
  • JVM类加载机制
  • 三种内部类的区别
  • HashMap原理
  • HashMap为什么要使用红黑树
  • HashMap红黑树的插入操作
  • ArrayList线程安全问题
  • Map的线程安全(HashMap不支持线程同步、Hashtable支持线程同步…)
  • synchronized
  • synchronized和volatile的区别
  • Tcp和Udp区别和使用场景
  • HTTP和HTTPS的区别
  • 四次挥手要是其中一次发送失败会发生什么
  • 五层协议
  • 进程与线程区别
  • 进程之间通信
  • 堆和栈的区别
  • Android四大组件
  • Activity生命周期
  • Activity四种启动模式
  • Activity使用singleTask启动一个Activity调用哪个函数
  • Service的startService和bindService有什么区别
  • Fragment和Activity的区别
  • 手写单例

字节一面(4月23日 4:00)

  • 面向对象三种属性(继承、封装、多态)
  • 常见的网络状态码
  • HTTP和HTTPS区别
  • HTTPS使用的加密算法
  • 栈和队列区别
  • 如何用两个栈来实现队列
  • 算法题:假设有一个数字a,c等于a的每个数相加,b等于a+c(例:a = 123,c = 6,b = 129),现在已知b,最后返回a。(我刚拿到题目的时候一愣,想到暴力解题,但是在想有没有更好的方法,最后面试官说你就用暴力解题就好,我就确定了一下c的范围,然后一遍ac了)
    一面题目我有点记不清了,感觉问的题不是很难,感觉大部分的问题是基于我简历上的项目,然后问的一些问题,一面结束以后面试官让我等一下,五点有另外一个人过来和我聊)

字节二面(4月23日 5:00)

  • Android四大组件,并说明使用场景
  • 五层协议
  • 常见的网络层协议
  • GC垃圾回收算法
  • 详细讲一下标记清楚算法
  • Java四种引用
  • 软引用和弱引用区别
  • 常见的调度算法
  • SJF有什么缺点
  • 如何解决SJF对长作业不利的情况
  • 大文件传输如何提高准确性
  • 数据库ACID分别代表什么
  • 举一个一致性的例子
  • 输入一个URL到展示界面的过程
  • 为什么要有DNS
  • 算法题:给出一个二叉树的前序遍历和中序遍历,让你求出这个二叉树是什么。(一遍ac)(因为我用到了递归,他问了我一些递归的缺点)
    二面感觉问题比一面更深入一些,但有些也是根据我的简历来问的问题,中间他问了我一个我不会,他也没为难我,直接换了一道题问我,感觉面试官还是很nice的。二面结束以后面试官让我再等一下,一会还有一个人来和我聊,我当时愣了一下,他问我要去吃饭吗,我说没没没,这到手的三面必须拿下啊。

字节三面(4月23日 6:00)

三面的面试官乐呵呵的,开始告诉我说三面不会有很多技术性的问题,重点都是开放性的,所以主要是我们来进行讨论,最后能得到一个结果就好。因为我已经经历了两轮面试了,当时脑袋有点不转了,而且脑壳巨疼,他还会不断提示我安慰我,感觉面试官非常的nice!

  • 先问了我怎么开始学Android的,然后怎么系统的进行学习
  • 因为我简历上有写自己参加学校的iOS club,学习了一些iOS的相关开发,他问了我一些Android和iOS的一些区别,感觉哪个更好一点
  • 问我接下来准备再去学习一些什么(我说的可能要学一下Kotlin,或者是一些跨平台开发的框架)
  • 问我对于这些新技术准备怎么去学习
  • 因为我简历上有一个web后端的项目,正准备去开发客户端,他问了我一下准备怎么去开发
  • 简历上也有写一个比赛的项目,他问我觉得有没有达到预期,准备再怎么进行优化
  • 问我觉得现在我最常用的app里,哪个设计的最好(我果断说抖音,嗯,不愧是我)
  • 让我设计一下微信扫码登录(面试官很nice,感觉一直在引导我)
  • 算法题:给定一个数组(例:[1, 2, 3, -1, -4, 5],其中正数代表往右飞的原子,负数代表了往左飞的原子,如果两个原子相撞了,则大的原子继续飞,小的原子被撞碎了,如果两个原子一样大,则都消失了,问你最后的情况。(例:3和-1相撞,-1就消失了,然后3和-4相撞,3消失了,最后结果为[-4, 5])(因为当时比较大小的时候忘了给负数变成正数了,后来面试官提示我我才意识到,我当时脑袋真的不转了)
  • 后面就问我对Android还是iOS更感兴趣一点,想来TikTok哪个部门,最早什么时候能来实习,后续hr会联系你
    三面结束以后我感觉我脑袋都要炸了,头疼了一晚上,连续三面实在是太顶了。

最后

4月24的晚上,我最慌,因为本来24号是周六应该是休息日,hr他们应该不上班,一天没给我消息,我在网上瞎找,看着大家好多都是三面挂了,当时贼慌,最后问了hr,hr说我过了,后续就是审批offer了,感谢hr当时愿意给我的打电话让我重新修改一下简历,帮我内推,我也终于结束了这几天每晚焦虑看面经看到三点多的日子。希望大家都可以上岸吧。
你看老天并不一定是爱聪明的人,他也有万分之一也会宠幸到我们这些笨小孩,所以不要放弃。

你可能感兴趣的:(android)