前言
最近在网上找了不少面试相关的资料学习准备面试!之前面了一个部门 3 次挂了 ….. 尴尬
有记录面试题,希望对你们有帮助~!少走一些弯路!请看答案在最下面!!
腾讯一面
介绍你做过的项目难点?
OC 修饰符,追问 weak,unsafe_unretained 什么意思?
为什么 NSString 要加 copy?
4.4. KVO 的原理是什么?
RN 基础架构是什么?
做过哪些性能优化?
有没有遇到什么卡顿的情况?怎么处理的?
HTTPS 和 HTTP 区别,追问具体怎么加密,如何信任证书
HTTP2.0 和 HTTP1.1 区别
TCP 接受窗口和发送窗口,TCP 3 次握手
数组和链表的区别,使用场景分别是什么
算法题:给定 50 个已排序数组,每个里面 200 个数,找出其中最小的 200 个数
描述思路,追问时间复杂度,追问还有没有其他方法。描述思路,继续追问复杂度,问有没其他方法。线下写完代码发送到邮箱。
算法复试
4 道一共有算法题,要求写出可编译代码。
反转一个链表
给定一个数组,其中有一个数只出现一次,其他数都出现两次,找到只出现一次的那个数。
实现堆排序
给定一个数组 array,其中 array[i] != array[i+1],找到任何一个 i,满足 array[i] > array[i-1] 且 array[i] > array[i+1]。假设 array[-1] == array[n] == 负无穷。要求 O(logN)时间复杂度。
6.2 二面算法题
翻转 k 个链表(写代码)
如何拷贝一个包含随机指针的链表(描述思路)
问答(因为我简历写做过 RN,面试官刚好也做过)
描述一下 RN 渲染过程
你使用 RN 的时候有遇到什么问题?什么地方导致 RN 性能瓶颈?
OC 对象内存结构,isa 指针有什么用,根源类是什么?
_weak 自动重置 nil 具体如何实现?
MSS 和 MTU 是什么,具体怎么确定
交叉面试
你觉得熟悉 iOS 哪些框架?
为什么 UI 更新必须在主线程?
追问:具体哪些冲突?
追问:还有吗?
追问:如果强行开一个子线程,把事件处理和 ui 更新都放进去,是不是可以解决你说的冲突?
了解过 Xcode 编译过程?了解过 bitcode 吗?
你了解哪些设计模式?具体描述一下?
研究生什么方向?
答:VR。追问:3D 渲染的具体过程。
面试资料:
看完文章如果你正在跳槽或者正准备跳槽不妨动动小手,添加一下咱们的交流群 1012951431 来获取一份详细的大厂面试资料为你的跳槽多添一份保障。