字节跳动 Dev Infra算法实习一面面经
1、自我介绍
2、深挖腾讯实习经历(聊了20min)
3、介绍第一段实习经历
4、指针和引用的区别
5、什么时候用malloc,什么时候用new(这里没答上来,感觉cpp里基本都用new了吧)
6、介绍智能指针(unique_ptr,shared_ptr,weak_ptr)
7、智能指针的底层如何实现的
8、如何排查内存泄露问题的
9、介绍c++的内存分布
10、静态链接和动态链接的区别
11、动态链接时如何找到对应的函数的(这里瞎说了一番,也没反驳我)
12、什么时候会由用户态切换为内核态?
13、为什么文件io操作时要切换到内核态?
14、介绍虚拟内存
15、虚拟内存如何映射到物理内存的
16、了解过哪些锁(只说了用过互斥锁)
17、互斥锁的用途?
18、实际问题中碰到的死锁现象(答了申请锁的顺序不当)
19、python的深拷贝和浅拷贝
20、python的可变对象和不可变对象
21、多线程和多进程的区别?
22、进程切换的开销为什么比线程更大,详细一些?
23、两个线程申请同一把锁时,如何高效的实现两者切换(条件变量)
24、如何解决python中的内存泄漏(没遇到过这种情况)
25、代码题,leetcode98.验证二叉搜索树 (秒了)
26、反问,组里主要做AI应用的,涉及到大模型的应用,js、java、go语言都有用到。
基本都答上了,希望不是kpi面吧
#面试##面经##实习面经##字节跳动#