字节跳动安卓客户端一二面凉经
写在前面
如果之前没有接触过多线程编程的,最好学好了再去面试。毕竟面试官都是有开发经验的,很喜欢问并发编程多线程问题。有一说一,字节跳动的面试官实力和态度都很好,人生第一次面试也算收获不小。
流程是:找人内推,最快一天不到就会HR打电话过来约面试时间。时间以自己和面试官都有时间为准,我2/15约了半个月后,以为好好准备一下,没想到。。。。。
一面(3/3),其实答完以为挂了的,毕竟异常和代码都没弄好,最后面试官的说法又很像是挂了,所以没抱希望,第二天还收到了调查问卷。但是过了26小时左右,收到了HR电话约二面,意外之喜。
- 自我介绍
- 线程的并发并行区别
- 讲讲HashMap
- 了解数据库?答:在学校有这门课,做过实验。 讲讲索引
- java异常体系
- 撕代码:无序数组的中位数,O(n)复杂度。我答的堆排序,直接排序什么的,复杂度都是O(nlogn),后面提示快速排序的思想,还是没想出来,就过了。
- 手撕快排。秒了,不过他说有点问题,不过我跑的自己写的测试用例没问题。
- 今天面试就到这里,**二面。我没听清,以为说有二面,就问有二面吗?他说有没有HR会通知。
二面(3/6)。这次是肯定凉了,整个答的非常菜
- 没自我介绍直接撕题目。Dijkstra算法(迪杰斯特拉)实现,没做出来
- 手撕double check单例模式。没写好,我以为网上看的那个是对的,面试官说要用voltile关键字
- voltile关键字与synchronized关键字区别,没答好,背的面经,没用过,禁不起问
- 垃圾回收机制。A,B互相引用会不会被回收。一样没答好
- 问我计算机网络熟嘛?我说还可以。那get的请求报文格式。就答出一部分,哎,是我太菜,以为问我三次握手四次挥手呢。。。
- 你有什么想问我的吗?我说希望后面继续努力,还是很想进字节的。