疫情期间啃完这份美团大佬整理的150面试文档,阿里斩获offer

1,222 阅读4分钟

  前言

疫情期间啃完了这份美团大佬整理的iOS核心知识点,也看了不少视频,本想着去试试,就面试了阿里,没想到竟拿到了offer,


阿里的面试经历

先介绍了项目,然后问了一些项目中的问题,然后开始问基础

属性的关键字

浅拷贝和深拷贝的区别

Block的循环引用、如何解决、原理

三种Block

Block和delegate的比较

kvo的实现原理

Autorelease pool的实现原理

消息转发机制

线程死锁的四个条件

进程和线程的区别

持久化

事务的特征

中途还讨论了Masonry的约束应该写在哪里,我说应该写在layoutSubViews,他说会调用多次,然后争论了一会儿

总结起来:面试官喜欢抛出一个大点,看你能讲多广多深

阿里二面 :40mins

介绍项目

性能优化

YYModel和AF源码

如何自己设计json转model

架构

迷之算法题

总结:阿里的面试效率是真的不提了,二面和一面间隔时间可能相差了一个月吧,我已经从北京回到了学校开始上课了,而且这次面试感觉有点奇怪,最后那道迷之算法题我们也有讨论,实在没搞懂计算两点间的距离的算法还能怎样优化,面试结束后我问了面试官最优解是怎样的,面试官告诉我没有最优,只有更优(微笑脸)

学习&提升&进阶直通车:有任何问题,欢迎你来一起交流,互相学习 进群密码 000,分享BAT, 阿里大厂面试及答案


阿里三面:2h

一个安卓的面试官。。。。。

主要问了项目的一些东西 和给一些场景问我如何实现

自我介绍 介绍一些项目难点

主线程是相对于什么而言的

一张图片的内存占用大小是由什么决定的

索引的作用

索引的优缺点

在数组中找最小的k个数

淘宝下拉加载更多如何优化

淘宝页面发送HTTP请求的过程

介绍一下MVVM

知道哪些设计模式

总结:三面面试官主要就聊了一些具体场景问题和一些基础,基础我觉得没太大问题。面试过程中我讲到一些东西发现面试官听不懂,才知道面试官是做安卓的,问一些问题其实有点让我无语,但是总的来说还是回答过来了,感觉也没有太大问题,但是后面还是被挂了,很无奈。


分享下,百度、美团的面试总结吧!

主要问项目的一些技术点

如何让一个label靠左,一个label靠右,然后右边的label能够完全显示

算法奇数排在前面,偶数排在后面

智力题,一个骑手送餐,ABCD商店,送给abcd四个人

kvo的实现原理

消息调用的过程

get和post的区别

http有哪些部分

tcp和udp的区别

七层模型

美团二面

讲一讲响应链

如何通过一个view查找它所在的viewController

如何扩大view的响应范围

微信分享大图如何实现,从进程的角度

进程间的通信方式,并举例

两个进程分别指向同一个地址空间并初始化一个值,分别输出是什么

算法,判断一个字符串是否所有的大写字母都在小写字母前面

修改podfile文件后,怎么用git diff显示出修改后版本和当前版本的不同,让我来设计

程序执行的过程

如果想要删除自己的一段代码,如何删除(在程序执行的过程中删除)

用过脚本编程吗

了解前后端吗


百度一面

我也不知道为啥我的简历会被一个做底层开发的部门拿去,然后面试很尴尬,全是计算机基础

大概回忆一下

进程和线程的区别

一个进程有哪些区

拥塞控制

进程间通信的方式

七层模型

TCP和UDP的区别

传输层和网络层分别是做什么的

UDP可以实现一对多??

算法 求数组的最长子数组

Http2.0如1.x的区别

重点来了!!!美团大佬整理的iOS核心知识点

限于平台篇幅原因,同时也为了大家更好的阅读,这份文档小编已经给大家准备好了,感兴趣的朋友可以添加群获取哈↓↓↓

学习&提升&进阶直通车:有任何问题,欢迎你来一起交流,互相学习 进群密码 000,分享BAT, 阿里大厂面试及答案