头条面试题 2020.6

多线程中有几种锁能实现线程同步效果, 并简述如何使用(手写实例代码)

如下代码的输出结果是什么, 为什么

void main(){
  print aaa;
  dispatch_delay(3, ^{
print bbb;
})
print ccc;
}

SDWebImage是如何做到缓存图片的, 如果一个tableView有1000行, 如何保证当前屏幕的图片做到及时加载, 这个时候其他的图片是什么状态, 如果自己实现缓存效果要如何做到

CALayer和UIView有什么区别, 分别是做什么用的, 除了CALayer之外还有没有其他的Layer, CAShapeLayer如何使用

贝塞尔曲线如何使用, 二次贝塞尔曲线需要哪几个参数

渐变色的生成需要注重哪些参数

layoutSubView都在什么时候会调用, 其作用是什么

NSDictionary的底层是怎么实现的, 如何做一个自定义的字典集合, 使用Map、STL如何实现一个字典集合

autoreleasepool是如何运作的, 把集合加入其中会出现什么情况, 如果把main.m中的@autoreleasepool删除掉会出现什么情况, 为什么

数据结构中的树有几种遍历方式, 如下的代码中如何做到广度优先遍历

struct Node {
    Node *left;
    Node *right;
}

void BFS(Node *head){ }

你可能感兴趣的:(头条面试题 2020.6)