2021 应届秋招:提前批挂后,二次面试字节跳动抖音 Android 客户端
4、Android 的 IPC 机制(Binder)是否了解(答的也不好)
5、如何用两个队列(FIFO)实现栈(FILO)
6、HashMap 和 HashTable 区别,HashMap 原理和实现,hash()的算法
7、如果自己设计 hash 算***怎么设计,为什么(答的素数取余)
8、String 的 hashCode()和 Object 的 hashCode()
7、虚拟内存和物理内存的概念和关系,内存分页的调度算法
8、怎么实现 LRU 缓存(参考[leetcode](
)?T146)
9、可以自己写一个 java.lang.Object 类吗,系统会加载哪一个
10、Java 里泛型的实现
11、了解常见排序算法吗,手写一下快排
12、Java
里加锁的方式,synchornized 关键字的原理,悲观锁和乐观锁都有哪些实现
13、死锁的条件和解决方法,讲讲银行家算法
14、TCP 的三次握手四次挥手,为什么要四次挥手
15、TCP 的流量控制算法(滑动窗口),拥塞控制算法
16、怎么解决用户高频点击打开新 Activity 导致的多实例问题(Activity 启动模式)
17、怎么判断两个无环单链表是否相交
18、写题:[leetcode](
)?445
19、反问
二面问题量非常的大,集中在 Java/OS/算法,但并没有特别难以回答的问题,认真准备的话大部分都能答出来。面试官也非常友好,给了很多引导和提示。
因为三面面试官的时间问题,约了两天后的三面
三面(~45min)
1、自我介绍
2、介绍一下实习做的工作,是自己完成的吗,遇到什么困难,成果怎么样
3、RecyclerView 怎么实现的 item 缓存,跟 ListView 有什么区别(因为项目用到了所以被问了)
4、写题:[leetcode](
)?1233
5、设计题:微信的联系人列表功能
设计添加联系人的 API(从可能的方式,数据形式,接口参数方面回答)
怎么实现联系人列表的 UI(答的 RecyclerView)
怎么实现 A-Z 首字母的快速定位功能
6、是自学的 Android 吗,为什么选择这个方向,有没有什么经验给同样想自学的学弟学妹
7、是哪里人,为什么想到上海来就业
8、反问
三面的问题不多,不过因为多数问题没有标准答案,难度其实高于一二面。
询问了 HR 说 offer 正在审批,希望能收到这份自己向往已久的 offer 吧。
总结
后来面试过后去问 HR 小姐姐说结果没有这么快,最快也要下周一二。等到了下周三也没有收到感谢信,于是我去找 HR 希望能结束流程找别的部门捞一下。小姐姐让我别急,帮我催一下,会有另一个 HR 小姐姐联系我。过了一会,HR 联系我告诉我已经通过审批,要了身份证号下发了意向书。
一些建议:
面试的时候,尽可能将自己知道的全部表达出来,被问的问题看起来虽然不多,但是每个问题建议都尽可能面面俱到。比如链表确认是否有环,写过之后可以再修改一下,写一版环入口节点在哪以及这样写的推导;谈到 HTTPS,可以先讲一下 HTTP 和 HTTPS、HTTP 各个版本区别、HTTPS 的过程(这里面又会有 SSL、对称加密和非对称加密)、HTTP 怎么传输大文件,顺便讲了一下自己申请域名的经历。
还有,如果要去大厂的话,底层一定要好好研究,还有算法方面真的要补补,不然面试尴尬得要死一直问别人要思路,要了也写不出。
评论