字节后端研发三面分享。
7.1 下午两点 一面
- 一个深度为5的满二叉树的节点个数有多少个。
- B树 和 B+ 树的区别。
- Mysql innodb 引擎的结构
- 进程的通信。
- 乐观锁和悲观锁有了解吗
- 怎么看占用内存比较多的进程
- 虚拟内存和物理内存之间的关系
- 分页和分段
- 用户态和内核态
- 哪些系统调用会进到内核态
- 所有的系统调用到会进入到内核态吗
- Linux某个目录下怎么找名字包含 txt 的文件。 find /home -name "*.txt "
- 用过 ping 命令吗 : ping命令是不能检测端口,只能检测你和相应IP是否能连通.
- ttl 是什么意思。 :存在于 IP 头部, 经过路由器的个数,减到0报文就自动消失。
- 怎么判断一个主机是不是开放某个端口:telnet 192.168.25.133 22
- DNS 的解析过程。
- TCP的可靠性传输是怎么保证的。
- 为什么建立连接需要三次,断开连接为什么要四次。
- time_wait 是在哪个步骤。
- tcp的粘包问题
- http的常见状态码
- get 和 post 有什么不一样
- 浏览器的跨域问题
- session 和 cookie 的问题。
- Ddos攻击。这个没听清。
- 慢查询,数据库。
-
struct{ char a; int b; }p;
sizeof(p) 是多大。 - public private, 和保护
- vector的内存管理。
- vector 的size(), 和 cap 的区别, : 一个是元素个数,一个是可用内存大小
- push_back() 把元素放在什么位置。
- 为什么会有虚函数。
- delete delete[] 什么区别
- c++ 内存泄漏
-
int i = 1; while(i < n){ i *= 2; }
问时间复杂度 - 力扣链接 这个题目数组是有序的, 但是面试官出的题数组里面是无序的。 要求时间复杂度 O(n), 空间复杂度 尽可能的小。
二面 7.7晚上八点
- malloc realloc
- 进程间通信有哪些
- tcp 和 udp 有什么区别
- C++ 的一些 stl 容器
- vector 和 list 有什么区别
- hash_map 和 map 有什么区别
- 滑动窗口是什么。
- 多路复用 IO
- linux 中的文件是有个数的吗
- 浏览器中输入 url 会发生什么。
- 对称加密算法 具体有哪些。
- 指针和引用有什么区别
- static 修饰有什么作用。
- static 修饰一个函数,函数有什么变化
- C++ 如何调用C 里面的库
- 如何封装一个库
- a = 1, b = 4, 如何交换, 但是不能使用第三个变量。
我就是憨憨,
a = a + b b = a - b a = a - b a = a ^ b b = a ^ b a = a ^ b, 怎么都可以。
- 如何判断一个单链表是不是有环。
- linux下查看机器的全称 hostname
- 给你一个数组,求三个数字之和为100.
- 有n个数字,比如 9 2 9 2 4, 每个数字代表一个实心立方体的高度,现在要放水在这些立方体上,一共能有多少水, 例子 一共就是 9
前面答的不怎么样, 最后算法题问了我三个, 最后一个又没有想出来, emmm, 之后问了学长,把我点醒了, 艹, 怎么可以这么简单。
基础知识答的不好, 算法题也没有回答好, 之后还约了三面, 真的是太开心了。
三面
自我介绍,
然后问最深刻的事情事什么,
就是项目或者比赛上: , 但是我讲的支支吾吾的, 没有表达好, 还是因为自己不太会表达。
下次要提前想好, 然后写下来,这个才可以说的流畅。
然后就是情景题, 反正我不会, 也表达不好。
之后就是算法题了,
给你一个数组, 问有多少个 (i,j) a[i] + a[j] == k, 给的数组是有序的,
要求 时间复杂度 n, 空间复杂度 n,
tmd 我脑子又短路了, 嘤嘤嘤。 简单的问题还能想这么长时间。 还让面试官提醒之后才想起来有错误。
三面面完之后一度以为自己凉了,
三天之后问了一个HR,说我挂了,
结果第四天另一个hr又和我约了四面时间。嘤嘤嘤
#面经##字节跳动##校招#