几家公司社招ios工程师面经

深圳市兴顺安科技有限公司

先让我做了一下自我介绍,然后问我为什么从上家公司离职

技术考察,问的很底层,显示问了一下关于TCP/UDP的东西

问了我一些关于自动内存管理与手动内存管理的差异性

然后问了一些关于多线程核心动画之类的问题

最后考察了一些算法

关于OC的 可以实用的多线程。

滴滴出行

进行自我介绍

浏览简历并提出相应问题

问block底层实现我的回答是主要是一个闭包,使用copy关键字进行内存管理,从栈copy入堆中

问runloop有几个model,跟线程的关系我的回答是 3个model,线程与runloop不可分割,没有线程runloop没有存在的意义,只能存在一个运行中的runloop,根据业务不同场景切换。afn的delegate使用runloop进行驱动

小米

APP占用内存过大怎么处理,没有说怎么导致,场景也没给出

多线程异步操作数据库,怎么处理。

聚合算法

viewcontroller的生命周期?说一个场景viewWillAppear,viewDidAppear,viewWillDisappear,viewDidDisappear的顺序不是这个的?还有个算法n的阶乘末尾0的个数,5分钟后问我有没有思路,然后我确实才想到跟10的出现有关,没有更多思路,然后面试就结束了。runtime没问,runloop没问,还有些记不清了。


l 厦门易名科技有限公司

面试时候是两个面试官一起。我猜测一个是人事另一个就是iOS技术人员。

围绕简历来问一些项目的细节

问一些技术点比如:socket,多线程,storyboard等

一般上什么网站学习

喜欢哪些业界大牛

平时遇到问题解决思路

用过哪些xcode插件

人事问题:为什么离职,前公司的人数规模,对新公司的期望,如何学习等等。

#滴滴##面经##iOS工程师##社招##小米#
全部评论

相关推荐

04-28 08:33
已编辑
东北大学 Java
# 更新:挂---## 限流1. 你是用 Sentinel 做了限流是吧?然后你用的限流算法是什么?  2. 除了滑动窗口算法,你还知道哪些限流算法?  3. 你的 Sentinel 默认给他做了实现,选择令牌桶或者漏桶算法,用 Redis 来实现一下?  4. 直接点来说,你用了哪些 Redis 的命令?怎么设计的?---## JWT5. 说一下分布式集群的身份认证难题,你的难题是在哪?  6. 你在保存客户端的是什么信息?把用户信息保存在哪?会不会被破解了?  7. 这个的问题是不是可以用更简单的方式去解决?  8. 把 session 保存在 Redis 中,如果用 Spring Boot 来实现怎么做?---## RingBuff9. 讲讲环形队列的数据结构?  10. 就是说环形队列的一个具体数据模型,比如说你要手写一个环形队列,要写哪些属性?  11. 各个方法做了什么操作?  12. 指针怎么移动的,环形队列的详细细节?---## TreeMap13. 看你说用 TreeMap 来解决一个快速匹配的订单需求,说一下具体的事情?  14. 交易的时候,比如说我以 a 价格是吧,交易 5 手,要卖买入 5 手是吧?你看现在要进行撮合,然后可能去卖普通里面有一个也是 a 价格卖出,对吧?但是他需要卖出 10 手,这时候你就你是具体代码做的是哪个操作?  15. 在这个挂单系统中,买家和卖家肯定发生了一笔交易订单,TreeMap 相当于一个本地缓存,怎么保存它的一致性?  16. 你说的是一个常规的旁路缓存的一个思路,但是在你这个系统中,你的 TreeMap 数据结构的更新应该是怎样的?  17. 只要有一个订单来,你就开始去做,相当于有一个订单提交接口,我们提交了一个买单或者一个卖单,然后你同步去完成这个事情?(这里确实是有点紧张了,我是用 RocketMQ 异步来完成的,但是没说出来)---## 分布式18. 异步写回数据库消息会丢失吗?(这里应该是想问消息丢失的解决方法,结果我说简单的情况不会丢失)  19. 消息会重复吗?  20. 分布式锁是吧?你还提到了事务消息,那就简单说一下什么叫事务消息?(没事给自己挖坑)  21. 分布式事务的一致性有几种实现方式?(只记得一个两阶段提交)---## 点评22. 用 ThreadLocal 和拦截器来做 token 校验,说一说具体的场景和具体的实现?  23. 你用 ThreadLocal 来解决什么问题?  24. 拦截器具体指的是什么的拦截?(有点脑子不转了)---## 手撕- N 皇后---## 总结1. 因为看别人的面经基本上都是八股,所以这两天主要准备的都是八股的问题,项目来说还是不太熟吧,当然他问的问题。感觉也比较随性和有的地方比较偏。当然自身对项目的熟悉程度还是不够,所以接下来还要深入去学习和理解。  2. 还有就是有些问题的表述不够清晰,甚至来说比较混乱,所以还是要多练习表达吧。
点赞 评论 收藏
分享
评论
点赞
5
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务