百度Android面试题
1.View和ViewGroup的关系
2.如何定位和解决Andorid的内存溢出问题
3.一个有N个元素的一维数组(A[0],A[1], ..., A[n-1]),设计一个算法求解该数组最大子数组。(要求时间复杂度是O(n))
4.用Java代码实现判断一个字符串中是否包含另一个字符串,不要用jdk中String的indexOf方法。
5.用Java实现一个Singleton.
6.简述Observer设计模式,并画出Observer模式的典型结构类图
7.& 和&&的区别
8.什么是dpi,ps,sp?适配是如何做的,为什么?
9.用最有效率的方法算出2乘以8等于几?
10.静态成员类、非静态成员类有什么区别?什么是匿名内部类?
11.Handler机制的原理,内部是如何实现的,消息队列的实现机制?
12.什么是ANR,如何定位和避免?
13.APK之间互相传递数据
14.简述Android的启动过程
15.如何加载ndk库?如何在jni中注册native函数,有几种注册方法?
16.如何收集软件崩溃信息?
17.简述软件编译流程和发布流程
18.是否编译过android源码和linux内核源码
19.写一个归并排序数组
20.自定义控件相关
21.缓存实现
22.线程同步(生产者 消费者)
23.符号匹配(栈)
24.还问了下拉刷新和分页加载的实现机制