今日头条2018春招安卓面经

一面:

协变

线程间通信?有几种同步/加锁方式?

进程间通信?答了三个只知道概念的和安卓的AIDL。

又问这“三个”中任选一个阐述原理

hashCode()方法实现

hashCode()方法 equals()方法相互联系?

ActivityA启动ActivityB,两者的生命周期分别是怎样的,是顺序执行的吗?

用过哪些框架,答曰RxJava,Retrofit,Realm,问哪一个熟悉一点?都不太熟……就随便挑了一个OKHttp来问:http请求中keep-alive保存长连接的实现原理是怎样的?

LRUCache原理,如何实现?

手撕代码,股票买入买进最佳时机,LeetCode上原题(有6道变形)

二分查找,写的递归,要求转成循环方式

 

二面:

 

内部类和外部类有什么区别?

静态内部类和非静态的有什么区别?

内部类为什么可以访问外部类的变量?

垃圾回收:如果两个变量互相引用是否还会回收它们?为什么?

标记整理算法是怎样的?为什么要前挪整理?

HashMap不是线程安全的,那么用什么替代?(本来是知道的,结果我多问了一句傻话面试官就跳过这个问题了……

(因为项目提到)Realm版本管理?更新表?

CoordinatorLayout与通常的FrameLayout和RelativeLayout相比有什么特点

View的绘制过程

(这次面试电脑麦克风出了问题 在手机面的)草草问了一下跳台阶问题

 

三面:

 

(因为项目提到)SurfaceView的特点?了解相关的TextureView吗?

HashMap的结构是怎样的,怎么存value,遇到相同的hash值的key,其value又怎么存。

手撕代码,想第二种解法,想第三种解法;

用快排来解决这个问题,优化,再优化。

有什么想问的?问建议学习路线,面试官建议就死磕官方源码就好,开源库的源码也多看。看不懂看别人解析也可以。

想到再补充,头条问得很深,多看源码……

有些问题我感觉是面试官觉得我太菜了就开始降题目难度,人艰不拆

头条三面估计是三面结束结算才开始淘汰,连续三面然后十分钟就通知我挂了,恩。虽然没过,但面试体验很好,出结果也很迅速,面试官人也都挺好的。

 

作者:草饼

本文来源于牛客网

——————————

牛客网(www.nowcoder.com)

- 互联网名企笔试真题

- 校招求职笔经&面经

- 程序员求职实习信息

- 程序员学习交流社区

 

posted on 2018-04-02 17:34  牛客网  阅读(120)  评论(0编辑  收藏  举报

导航