记2017年校招

文章目录
  1. iOS技术
  2. 算法
  3. 其他技术
  4. 其他问题

年根了,好长时间没有写博客了,近期比较忙。记录一下秋季参加的一些互联网公司的校园招聘面试题,由于校招面试题对于企业来属于秘密,我在此就不说是哪些公司了,主要是让大家了解校招趋势和难度,自己做一个总结。

时间虽然比较长了,但是题目记得比较准确,主要是每次面试结束后我都马上把题目记到备忘录里面了。目前比较忙,还没时间整理答案,以后如果空闲的话,整理下答案吧。

AD:博主想申请WWDC 2017 Scholarship,翻身打滚求App创意!要求如下:

  1. 运行在iOS、tvOS、macOS、watchOS上
  2. 运用到最新的系统特性
  3. 有创意
  4. 我一个人能做的出来

有想法的朋友请发邮件到talisk@talisk.cn,博主翻身打滚感激不尽😂

我面试的岗位是iOS开发技术岗,所以本篇文章根据面试内容分为三个部分:iOS技术、算法、其他问题。

iOS技术

  1. @property有几种特质?这几种特质的的意义?
  2. @property内存管理特质有哪几种?区别是什么?
  3. iOS开发中为什么@property都用nonatomic非原子性而不是atomic?
  4. weak指针的实现原理?
  5. category和extension的区别?
  6. 如何向category中添加property?
  7. 怎么理解Runtime?
  8. Swift中的String和NSString有什么区别?
  9. Swift是如何进行内存管理的?
  10. ARC是如何实现的?
  11. 方法交换的实现原理?
  12. NSOperationQueue相比GCD来说,有什么区别?
  13. GCD都有哪些队列?
  14. 如何发现iOS应用卡顿?
  15. iOS应用卡顿的原因是什么?
  16. 有没有想过为什么iOS的UI操作都要在主线程完成?主线程为什么唯一?
  17. 谈一谈你对RunLoop的理解
  18. RunLoop的mode是什么含义,有什么用?
  19. 设计一个网络图片控件。
  20. iOS 10新添加了哪些特性?XX这个应用使用到了哪个功能注意到了吗?

算法

  1. 不借助其他变量,统计一个int的二进制表示法中1的个数。如果是unsigned int呢?
  2. 判断两个链表是否有交点
  3. 写一个有序堆插入元素
  4. 写一个方法返回任意二叉树的高度
  5. 物品abcde对应重量12345,质量54321,背包承重10,问如何拿物品价值最高?(数是瞎说的,忘记面试官给的数了)
  6. 讲讲KMP算法
  7. 一个袋子里七个球,4白3黑,一次性取3个球,求至少两个是白色的概率?
  8. 有一个天平,和13枚外观相同的钢球,其中1枚与其他12枚重量不同,最多多少次能找出这枚钢球?如果有n个球呢?
  9. 有一群人至少有一个人戴黑帽子,其他人戴白帽子,每个人都能看到别人的帽子,看不到自己的,认为自己戴黑帽子就在关灯后拍掌,第一次和第二次关灯没掌声,第三次关灯有掌声,请问有多少人戴黑帽子?

其他技术

  1. 解释一下OSI模型?各层的用途作用?
  2. TCP协议和UDP协议的区别?
  3. TCP协议是如何保障数据传输可靠性的?
  4. MTU是什么值,有什么用?
  5. cache-control的几个值的意义?
  6. 你了解哪些淘汰算法?
  7. 协程、线程、进程的关系、区别?
  8. 如何避免死锁(银行家算法),原理如何?
  9. 给出一张资源分配图,判断是否有死锁。
  10. 数据库第一范式的特点?
  11. 用过什么NoSQL?用途是什么?
  12. C和Objective-C的关系、区别?C和C++的关系、区别?Objective-C和Swift的区别?

其他问题

  1. Mac上有什么提高效率的工具可以推荐?
  2. 自己开发过什么小玩具?
  3. Mac是自己买的吗?为什么自学iOS开发?
  4. 除了会iOS开发之外,还做过什么?
  5. 你遇到最大的困难是什么?
  6. 你如何看待加班问题?
  7. 以后自己的职业生涯是如何规划的?
  8. 用过xxx(某公司高流量应用)吗?用户体验如何?

AD:最后还是广告😂

我正在维护一个叫TalkCode的技术社区,网址:http://talkcode.cc刚刚上线三天,注册用户已经破百,目前主要讨论iOS开发/Android开发技术。如果大家遇到问题可以到上面提问。

TalkCode二维码

扫描二维码,马上进入talkcode与大家一起talk code!