字节 飞书后端 一二三面面经
上海 飞书办公套件后端开发 暑期实习
一面 3.2
虚拟内存是怎么是实现的
c++ 譬如 new 一个 struct,那这个 struct 在哪里
c++ 锁了解吗(不了解这块也记不太清原话
vector list 有什么不同
vector list map 用迭代器删除一个元素怎么实现
数据库有年龄,姓名,职业,性别,分别怎么存储,怎么加索引
因为可能经常查询姓名,应该给姓名加索引吗
如果查姓名性别,怎么做,答联合索引,问顺序呢,为什么
哈希表是怎么实现的,为什么桶的数量为质数,如果发生了哈希冲突呢
做题:
- 最近公共祖先
二面 3.8
多线程了解过吗,虽然我说不了解但是
如果有两个线程,一个要打印 1234...,另一个要打印 ABCD...,怎么做到让他们打印1A2B3C4D...
数据库了解吗,为什么要加索引呢
那为什么要 B+ 树而不是 B 树呢
你平常会建索引吗
计算机网络了解吗,TCP/UDP(说还没学)那你知道一些什么实际应用吗
那滑动窗口你知道吗
c++ 虚函数应用场景
虚函数表的话知道多少
stl 用的最多的是什么,说了 vector
vector 底层是怎么实现的呢,那如果我要再加一个数发现满了呢
做题:
- 二叉树左视图
三面 3.9
目前学习哪些课程
数据库中如果要存储新一行数据会发生什么
怎么查询数据
如果查找的条件不是主键
如果有要插入又有要读的操作会怎样
怎么上锁
怎么实现读锁和写锁呢
编译运行一个程序的过程,怎么编译
有 1 亿数据,要找到最大的前 100 个
先说了用小根堆,问了复杂度
问其他方法,说了排序,问排序有没有优化方法
多线程了解吗,说了只知道基本概念没有实操后就没了
做题:
- 最长回文子串