快手 客户端开发 视频面(2019.9.22)
一面 45mins
- 自我介绍
- c与c++的区别
- struct与class的区别
- 空类为什么占一个字节
- new与malloc的区别
- 线程与进程的区别
- 进程间通讯方式,线程间同步方式
- 三次握手,四次挥手
- 为什么四次挥手而不是三次
- tcp如何实现可靠性
- 计算机五层架构有什么
- https为什么安全,https为什么需要证书
- http的应答方法都有什么
- time_wait存在的意义
- 知道什么STL,map的底层实现为什么是红黑树?
- 重写与重载的区别
- 动多态的实现方法
- 自己实现一个LRU算法,用什么数据结构
- 两个栈实现一个队列,说思路
- 浏览器输入一个url会发生什么
- DNS域名解析的过程
- 快排的时间复杂度
二面 40mins
- 一个程序的存储空间布局
- 程序的编译链接过程,编译中的词法/语法分析具体怎么分析的,讲一下
- 平时怎么使用vim的,讲一下
- tcp如何实现可靠性(讲各个点的具体内容)
- 知道缺页中断吗,讲一下
- 自己实现一个多线程同步的锁
- 说自己的项目,项目最大的挑战
- 手撕代码,自己实现一个ls
- md5的思路,它是怎么实现的
- 有什么要问我的
- 快去吃饭吧~~~555