岗位介绍:小组以移动端为主,多媒体(音视频)相关的落地功能开发,包括但不限于视频拍摄、视频编辑(camera图像采集,音视频编码,特效渲染,视频合成,视频编辑视频剪辑),(抖音头条),做工程的。90%做c++,10%做安卓/IOS,对性能要求高,对c++,操作系统原理,数据结构算法熟悉。
另外:底层的AR特效算法、深度学习算法,由另外的组负责。
下面是问题:
基础知识部分:
1. 面向对象编程中多态性的概念阐述,使用场景(这类问题回答时不用围绕技术细节回答)
2. 用c++写一段代码表现多态性,只要重写(注意语法不能有错误)
不满意就没有再继续问c++了……
算法题:
两个有序链表,升序,合并(剑指offer原题,但是我忘记逻辑了,语法也有问题)
过程中遇到的问题:指针赋值null会有什么问题;
安卓部分:
1. activity的生命周期是什么样的?
2. onCreate onStart这些生命周期的回调接口是在哪个线程被调用的?
3. 如果在安卓上有一些耗时操作,怎么办?
4. 如何启动一个子线程?
5. 在内部类中重写run方法,在run方法里面可以访问thread函数内的数据吗? 如果可以,怎么访问? (我回答用message传递,不太对)
6. 做过的视频播放器,用的什么layout
Java部分:
1. final的作用,使用场景
2. 抽象类和接口的区别
OpenGL ES部分:
1. 说一下画面渲染的大概流程是什么?
2. 程序和OpenGL是如何进行传参的?
Python部分:
1. Python的多线程和Java的多线程是一回事吗?
2. ollery关键字有用过吗?
其他:
1. 有没有接触过播放器的画面渲染部分,接播放器的SDK