前言 关于面试题,可能没那么多时间来总结答案,大家可以互相留言讨论。个人主要记录一下准备过程,和面试的一些总结,希望能帮助到正在面试或者将要面试的伙伴。
小编iOS大厂圈:1001906160一面:1、分类相关 2、iOS 内存机制以及管理方案详细说 3、http三次握手四次挥手 4、GCD 与NSOperation相关问题 5、SDWeablmage流程以及你设计图片缓存的你怎么设计 6、KVO的原理 7、assign和Weak区别以及其他关键字 8、+load和+initialize 9、编译器帮你加retain release 原理 10、websocket和 http长连接的区别 11 、算法:[1,2,3,4,5,6,7,8,9] k=3,把数组转换成[7,8,9,1,2,3,4,5,6],就是一个数组通过K的值把数组后K位挪动到前面。 二面:1、runtime相关,你所使用的runtime 相关的方法 2、runloop机制,原理,流程 3、散列表的构成以及原理 4、app 从点击图片进入到结束的经历 5、dyld 怎么加载动态库 6、僵尸对象原理 8、设计一个日志系统 9、mmap 怎么保证数据不丢失 10、为什么会发生OOM,发生后iOS系统是怎么杀掉APP的 11、FFmpeg的理解 12、app中的直播,你怎么去规划或者说你是怎么去考虑架构的以及整个流程?(个人主要是从推流端,拉流段,解码这三方面去说的比较理论化) 13、算法
数组是否可以三等分
设计一个集合类,包含两个方法,add()可以插入数据,query(_n:int)->可以查找集合不大于入参的一个元素,两个方法的时间复杂度
|