1、iOS瘦身:代码瘦身、资源优化。(安装包体积优化,图片资源优化的策略)(怎么删除无用的图片?怎么压缩图片?)
2、循环引用怎么解决,weak 是怎么实现的
3、block 的实现,怎么捕获变量,拷贝值和引用指针有什么区别,怎么处理栈和堆的关系
4、如何实现一个优先级队列
5、如何实现一个读写锁,分别实现读者优先和读写公平
6、如何实现一个动态数组,负载因子和扩容因子的作用
7、页替换算法,LRU 怎么实现
8、Linux 的 I/O 多路复用
9、TCP 如何保证可靠性,流量控制,拥塞控制
10、图片资源优化,图片压缩,图片格式,svg?
11、代码资源优化,静态检查,通过字符串匹配删除无用的类,有什么问题?
12、线程性能监控,如何利用子线程监控主线程?
13、磁盘和内存的存储索引,数据库索引
14、共享内存
15、实现 LRU Cache
16、两个线程交替打印
17、最长重复子串
18、视频是用的 TCP 还是 UDP?它们的区别是什么?
19、如何防止中间人攻击?
20、子线程怎么更新 UI?
21、数组和链表的区别?
22、Flutter 的架构实现?用的什么渲染引擎?
23、滑动效果的优化是怎么做的?
24、Swift 和 OC 的区别?
25、UIView 和 CALayer 的区别,说几种特殊的 CALayer
26、死锁是怎么形成的?
算法:
1、把整数N(>2)拆分成若干个正整数之和,求其中一种拆法,使得各正整数相乘的积最大,两种解法
2、输入多个闭区间,这多个闭区间覆盖的范围可能不连续,为了让覆盖的区间连续,请输出所有补齐区间
3、给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径
4、找到数组最大的 k 个数
5、
网友评论