WXG 企业微信客户端 iOS 开发实习一面

1. 手撕 合并链表(l1,l2) 但是无返回值(其实挺简单的,多个 prev 指针,但一开始写成有返回值的了,最后太紧张了没改过来,下来看发现很简单)
2. 讲讲项目
3. MVVM 怎么实现的
4. 具体讲一讲 MVVM 的流程,比如完成任务,就比如数据有一个列表,页面一个加号,实现怎么做的
5. 图片上传(批量上传,上传失败,网络相关的)
6. 列表滚动优化这块怎么做的
7. 把大量计算放到异步函数,举个例子
8. 那假设有大图,你在滚动这块可以怎么做,怎么渲染,来优化
9. 多级缓存机制
10. Actor 模型数据一致性讲一下
11. 那 actor 模型这块,它肯定是串行队列,那假设有 100个低优先级的,现在有一个高优先级的,怎么办
12. 那假设用户滚到第100个,现在想回到第5个,那会不会涉及到加载删除的过程,那有没有好的调度实现
13. 那要是用户不断上下滑动,那你说的那个缓存加载机制不断有个加载删除过程了?

总共1h10min左右,主包还是太菜了,面完就挂了
#面试问题记录#
全部评论

相关推荐

1.  先请你做一个简单的自我介绍。2.  你能给我分享一个你觉得比较值得分享的项目吗?哪一个亮点比较突出?3.  (针对调度中心)你这里有没有去做一些性能上的压测?4.  (针对调度中心)它的稳定性、可靠性方面有什么设计吗?5.  (针对调度中心)你能否做到定时任务的并发实例控制?(比如上一个任务没跑完,下一个任务又来了)6.  介绍一下HashMap它底层的原理。7.  HashMap是一个线程安全的数据结构吗?8.  讲一下死锁是怎么形成的,我们可以采取什么策略去规避这个问题?9.  平时在代码过程中怎么去注意,避免出现死锁的情况呢?10. (针对死锁规避)你怎么做这个保证呢?怎么去确保(至少一个线程能拿到所有资源)?11. 假设有多个线程需要获取两把锁,你怎么去避免死锁呢?12. (针对原子操作的回答)具体一点用什么操作可以设置?13. 怎么去设计一个分布式锁呢?14. (分布式锁)有没有可能执行时间太长,导致Key被Redis释放,被另外的进程拿到,然后原进程又执行了删除(误删锁)?15. (分布式锁)如果因为网络故障导致续期不成功,那怎么办呢?有没有更可靠的方式?16. 讲一下MySQL索引的原理。17. 假设我有一张表,给它的每一个字段都设置一个单独的索引,这是一个好的方法吗?理由呢?18. (那)做一个囊括所有字段的大联合索引,是不是能够比较好的解决这种问题?19. (针对联合索引)为什么?为什么还要回表呢?20. (场景:读多写少、查询条件无规律)这个大联合索引还有什么别的问题吗?21. (那)我给他们每个字段都单独加上索引这个方案怎么样?22. 那这种情况下你有什么办法做的更好?23. 假设开发一个电商系统,要做一个实时的热榜系统(比如24小时内点击量最高的前100个商品),你有什么想法吗?24. (热榜系统补充)时间范围是可以选的(24小时、一周、一年),并且是滚动更新的。25. (针对方案)它的数据量级很大,点击量可能达到上亿甚至几十亿,你(的方案)撑得住吗?26. (针对方案)真的有必要记录每一次点击的数据吗?内存也顶不住。27. 我刚刚讲的是要做一个秒级的(更新),你这个(方案)是能做到秒级的延迟吗?28. 看你有什么问题想问我。
查看28道真题和解析
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

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