商汤科技 商汤科技一面 自我介绍 • 数羊,给定一个初始数N,第一次数的数为N,第二次为2N,依次类推,直到kN,那么求当0-9的数全部都出现的时候的k值 • 介绍property的修饰符 • bounds和frame的区别 • 在MRC中如何解决循环引用 • 介绍多线程的实现方式 • 介绍iOS中数据库,描述一下sqlite的表结构 • KVO是什么,使用KVO需要注意哪些问题 • GCD中的循环引用 商汤科技二面 自我介绍 我:接触iOS开发三年,上架的项目有5个... 面试官没说清楚题 然后边讨论题应该怎么设计,边聊思路 • 拿到一个项目,应该如何设计架构 • MVC模式是怎么交互的 • UITableViewCell如何实现代理模式的 • 谈谈KVO模式如何实现 • 三次握手的细节 • 状态码 • 如何设计缓存策略 • 谈谈多线程的底层原理 • 内存管理修饰符的区别 • 介绍一下深复制和浅复制 • 描述一下runtime • runtime可以做什么事情 • 描述一下runLoop • runLoop又可以做什么事情 • 介绍一下iOS中的多线程 • GCD有哪些常用的API • 使用GCD应该注意什么问题 • iOS内存管理方式 • iOS的沙盒 商汤科技三面 自我介绍 项目 • 动机 • 过程 • 扮演角色 • 收获 • 有哪些不足 • 具体每个项目还聊了可行性(其中有创业项目) 技术 • git相关操作 • 多线程底层原理 人生 • 职业规划 • iOS工作想要从事前端UI还是高性能 • 想要从事前端移动端还是愿意从事后台的工作 商汤科技HR面 • 有了解过相关工作内容吗,是否和预期一致 • 对公司了解吗 • 我给你介绍下吧 • 工作城市选择 • 目前有offer吗 • 目标公司的特点