2020秋招网易云音乐iOS 搜狐视频iOS

一面

项目:

  • 处理URL的函数
  • iOS页面跳转和框架
  • URL怎么匹配的(如何自定义URL scheme进行跳转)

Apple的URL scheme(://前的部分)是支持app间相互跳转的协议(自定义URL scheme跳转https://www.jianshu.com/p/1295194b11e4)

Configure your URL schemes in Info.plist、编写URLscheme对应的UI逻辑、安装app时注册自定义 URL Scheme、从 Safari 中调用自定义 URL Scheme

  • 循环引用 OC weak(这里需要说明编译器是禁止package之间的依赖的)

弱引用,当其内存空间被释放后,指针自动指向nil

数据库:

  • mysql事务是访问并可能操作各种数据项的一个数据库操作序列,这些操作要么全部执行,要么全部不执行,是一个不可分割的工作单位。

ACID原子(一个事务必须被视为一个不可分割的最小工作单元,整个事务中的所有操作要么全部提交成功,要么全部失败回滚)、一致(事务开始之前和结束之后,数据库的完整性不会破坏)、隔离(一个事务所做的修改在最终提交以前,对其他事务是不可见的)、持久(事务处理结束后,所做的修改会永久保存到数据库中)

思维题:

  • 很大的数组查询是否是特定的数

如果不超过内存空间大小,考虑用bitmap表示某个数是否存在(这里举例,5,就是00010000),缩小了内存占用空间,遍历一遍填充bitmap,然后可以直接判断特定的数是否存在于数组中。

如果超过内存空间大小,分到不同的机器上,然后利用bitmap查是否存在。

  • 哈希表的问题

依赖于哈希算法、依赖于数组(数组被填满后性能下降,扩展困难)、不利于排序。如果能够提前预测大小,没有有序遍历的需求,哈希表的查找性能还是非常好的。

C++:

  • 空类的默认函数:

默认构造函数、默认析构函数、默认拷贝构造函数、默认赋值运算符、默认取地址运算符、默认取地址运算符const

网络:

  • http头部
  • 读研期间最大的收获

跑题,重写回答

 

搜狐视频一面:

  • 内存管理
  • @property (copy) NSMutableArray *array

copy将NSMutableArray变为了NSArray

你可能感兴趣的:(面试记录)