今日头条社招 ios工程师面经

今日头条


今日头条一面

自我介绍

手里有你的简历,但是还是想听听你来自我介绍下

• 合并两个有序数组

• 二叉树的反转

• 线程和进程的区别

• 堆和栈的区别

• load和initialize区别以及它们有哪些应用

• 代码写在load和initialize中会影响启动吗

• 介绍下iOS中的多线程

• GCD手动创建的线程和GCD提供的API线程有啥关系

• 有读过GCD的源码吗

• 挑一个比较典型的项目进行分享

• iOS中开发有哪些调优策略

• KVO和KVC是什么

• 工厂模式是什么

• 工厂模式和抽象工厂的区别

• 单例模式如何设计

• 多线程有哪些

• GCD中信号量怎么使用

• 一个队列负责插入数据操作,一个队列负责读取操作,同时操作一个存储的队列,如何保证顺利进行

• 原型模式



今日头条二面

• 实现一个LUR Cache,包含读、写两个操作

• block相关

• 发送网络请求

• MVVM

• KVO

• 消息机制

什么情况使用weak关键字,相比assign有什么不同?

链如何让自己的类用copy修饰符?如何重写带copy关键字的setter?

深拷贝与浅拷贝分别是什么?

@property的本质是什么?ivar、getter、setter是如何生成并添加到这个类中的?



今日头条三面

算法

• 查找两个节点的最近公共父节点

• 相比上次来面试提高了什么

• 来段英文介绍

• 拿过哪些offer

• 为什么选择去天天狼人杀

• AFNetworking的源码架构

• 自己如何设计网络库

• Masonry源码架构

• TCP的三次握手

• TCP的四次挥手


#社招##iOS##面经#
全部评论

相关推荐

服从性笔试吗,发这么多笔,现在还在发。
蟑螂恶霸zZ:傻 x 公司,发两次笔试,两次部门匹配挂,
投递金山WPS等公司10个岗位 >
点赞 评论 收藏
分享
点赞 16 评论
分享
牛客网
牛客企业服务