字节ads infra实习面经
主要聊实习,一些八股和算法如下
一面
- 线程数怎么设置
- c++构造函数初始化什么,析构函数什么时候调用
- 纯虚函数作用
- 多线程写sharedptr会不会core,平时有没有遇到core问题
- stl的内存分配器
- sort用了哪些算法,为什么
- vector的使用有哪些优化
- 一个全局的vector,怎么动态扩容缩容
- 平时用哪些linux命令,find查文件名怎么递归查
- gdb看堆栈、变量、指针、崩溃的代码
- 算法:每个数都能表示为3的幂次,前面加1、-1、0,比如5 = 1 * (3^2) - 1 * (3^1) - 1 * (3^0),于是得到[1, -1, -1]
二面
- move和forward的区别
- tcp建立连接client和server调用哪些函数
- 32位的机器,进程最多能分配多大内存
- select和epoll区别
- 设计朋友圈架构
- 算法:反转链表+链表相加