Skip to content

Latest commit

 

History

History
105 lines (53 loc) · 3.42 KB

27抖音快手等面试题2020年9月.md

File metadata and controls

105 lines (53 loc) · 3.42 KB

备注:此题目为掘金技术群某帅哥授权分享【Along】😁

抖音商业化团队

自我介绍

聊聊之前的项目

你对iOS多线程的认识

OC消息发送机制,objc_msgSend那一套

runloop理解

做过哪些性能优化

一道算法题,求数组逆序数,要求说出来思路,并且白板编程

快手公共平台组

1.自我介绍,聊聊之前的项目巴拉巴拉。

多线程,runtime,runloop,objc_msgSend 流程

做过哪些性能优化,哪些情况会引起离屏渲染

autorelease pool

setneeddisplay 和 layoutifneed 的区别

什么情况会触发layoutsubviews

大概问了下数据结构的一些问题,堆排序

其他家的面试题目

websocket说下你对这个协议的理解

让你实现一套小程序框架,你怎么实现(有点变态)

https/http 区别。https 过程

排序算法用过哪些,原理

C++智能指针了解过么?

参考内容

c++里面的四个智能指针: auto_ptr, shared_ptr, weak_ptr, unique_ptr 其中后三个是c++11支持,并且第一个已经被c++11弃用。

  • 我们知道c++的内存管理是让很多人头疼的事,当我们写一个new语句时,一般就会立即把delete语句直接也写了,但是我们不能避免程序还未执行到delete时就跳转了或者在函数中没有执行到最后的delete语句就返回了,如果我们不在每一个可能跳转或者返回的语句前释放资源,就会造成内存泄露。使用智能指针可以很大程度上的避免这个问题,因为智能指针就是一个类,当超出了类的作用域是,类会自动调用析构函数,析构函数会自动释放资源

NSNotification 为啥要设计成在同一个线程里面执行任务

参考内容

官方的文档,是这样写的:

In a multithreaded application, notifications are always delivered in the thread in which the notification was posted, which may not be the same thread in which an observer registered itself.

 在多线程应用中,Notification在哪个线程中post,就在哪个线程中被转发,而不一定是在注册观察者的那个线程中。

  • 出于线程安全的角度来考量的。官方文档告诉我们,NSNotificationCenter是一个线程安全类,我们可以在多线程环境下使用同一个NSNotificationCenter对象而不需要加锁

HTTP2.0 有什么变化

js里面的变量let var 区别,js里面的原型和继承了解么

单向链表相交怎么判断

SwiftUI 和 绑定技术

强引用弱引用的区别,是怎么实现的

block原理

设计模式知道哪些,在项目里面用到哪些,你的项目架构是怎么设计的

如果类似数组越界这种随机崩溃情况,交给你处理,你有什么处理的思路么?从哪些方面入手。

觉得整理的蛮不错,可以赞赏一下旺仔(收集整理不易,且赞且珍惜)

链接