安卓技能表:
-1 算法:
- 常用排序算法以及复杂度
- 比较器用的哪种?
- 快排怎么写?
- 完全二叉树高度为n结点最多有多少?
- 汉诺塔问题怎么解决?
- 链表和数组的比较
- 二维数组二分查找的最优算法,数组元素从左到右从上到下递增
- 一个无序数组怎么找出两个和为特定值的数?
- 快排后首尾两游标
- 12个鸡蛋有一个质量不同,如何只称三次测出
-
- 2操作系统
-进程冲突
-生产者消费者问题
按逻辑分页和物理分页的好处是什么?
什么是脏内存
红黑树
3网络
http1.1相比以前的版本有什么改变
七层/五层模型
tcp/ip分别对应哪层
https的对称加密
http和https,ssl和tls握手
tcp三次握手的过程?
四次挥手的过程?
4java
public等四个权限关键字的区别
synchronized的用法区别,可否嵌套
hashmap底层实现,扩容策越,初始化
arraylist和linkedlist的实现和区别
classload的作用,双亲委托。
gc算法(优缺点),为什么叫新生代老生代(晋升机制)
强软弱虚四种引用的区别
静态内部类和内部类的区别
元空间有哪些东西
hashmap与hashtable的区别
java泛型类型擦除发生在什么时候,通配符有什么需要注意的
hashmap删除键值对的过程,扩容算法,hashcode和equals有什么关系
java保证线程安全有哪些方法
volatile和synchronized各有什么作用
浏览器打开一个网页的过程发生了什么
final作用
finalize的作用
try里面return了finally还会执行吗?执行顺序是?
wait和sleep的区别,应用场景
gc发生在什么时候
死锁发生的条件
5android
activity退出怎么保存数据
怎么把数据写入文件
picasso的缓存策略
lrucache底层实现
linkedhashmap底层实现
缓存文件怎么命名
Rxjava优缺点
自定义view有几个构造方法,第三个参数的作用
listview的convertview的作用,用viewholder为什么可以优化它
app被杀死怎么启动
耗电太多怎么破
怎么统计crash
怎么减少用户流量消耗
事件分发机制
ontouchlistener返回false才会调用onclicklistener
消息机制
view的绘制流程
放法数超过65535怎么办
binder
anr
bitmap怎么避免oom
retrofit原理
recyclerview和listview异同
handler原理
activity生命周期
四中启动模式区别和应用场景
singletask启动的activity在哪个栈
安卓多线程和多进程的区别,进程和线程的区别
下拉刷新加载更多的原理
map与flatmap的原理
可不可以多次subscribeon,ObserveOn,会有什么后果
lambda表达式和匿名内部类的不同
开发过程中有没有遇到内存泄露的问题,怎么解决的
service生命周期以及两种启动方式的区别
实现ipc的方法有哪些
消息队列为空会怎样
换主题功能怎么实现
动画原理
怎么设计一个检测内存泄露的第三方框架
为什么用picasso不用更好的库
手写一个线程安全的单例模式
NP问题
断点调试功能怎么设计
app启动过程中的堆栈分配