百度提前批 C++ 一面/二面

百度提前批  C++ 一面
只记得这些了,一面面试官问的很快,会根据一个问题继续深挖

C++:
1、C和C++的区别
2、为什么一定要把声明放在.h中?为什么不能直接放在.cpp中?有什么区别?
3、shared_ptr作为形参传入会怎样?shared_ptr多线程怎么实现的?
4、fun() const 函数后面加const有什么作用?--不能修改类成员函数
5、functor函数
6、一直往vector容器里面push_back内容,会发生什么?--vector的扩容原理
7、vector怎么删除原vector内存--swap()函数删除内存,erase()删除内容
8、RAII--资源获取即初始化(resource acquisition in initialization),用来管理资源、避免泄露的方法,主要用shared_ptr等来实现
9、纯虚函数和虚函数的区别
10、程序编译过程
11、静态链接和动态链接

操作系统:
1、多线程了解吗?--没用过
2、进程和线程的区别?线程共享的资源?
3、线程模型?--1对1 多对1 多对多
4、IO模型中阻塞和非阻塞,异步和非阻塞的区别
5、系统调用,上下文切换
6、内核态与用户态中间是什么?
7、用户态的线程
8、当一个线程发生系统调用的时候,其他线程能正常使用吗?如果是m-> n的关系呢?
9、进程的内存管理

计网:
1、TCP四次分手
2、TIME_WAIT在那个阶段

数据库
数据库了解吗?--不了解

手撕:最大递增子序列的长度


百度提前批 C++ 二面
数据结构:
1、二叉树、平衡二叉树、如何保证二叉树的平衡?旋转算法了解吗?
2、hashmap实现--hash_table,开链表解决hash冲突
3、stack--底层是deque实现的,讲了一下deque

计网:
1、http,http在那一层--应用层
2、TCP/IP四层模型--应用层、传输层、网络链路层、物理层
3、TCP三次握手
4、TCP/UDP区别
5、面试的链接方式是什么?--udp
6、HTTP请求方法--get、post、put、patch、delete等

操作系统:
1、进程与线程的区别
2、进程与线程的通信
3、共享内存是怎么实现的?
4、信号

Linux:
1、查看进程--ps
2、查看资源--top
3、杀死进程--kill -9
4、ctrl c   ctrl z
5、linux top 刷新时间

手撕:翻转链表--包括输入输出

反问:部门做什么的?AI,私有化,to B,语言:golang
#百度2021校招提前批##面经##百度##校招#
全部评论
感觉C++部分比较难,但答主不会数据库还让过了,让我比较惊讶,因为我也不会,我原以为是必须要会的
点赞 回复 分享
发布于 2021-08-10 18:44
楼主投的哪个部门
点赞 回复 分享
发布于 2021-08-10 19:23

相关推荐

10-15 16:27
门头沟学院 C++
LeoMoon:建议问一下是不是你给他付钱😅😅
点赞 评论 收藏
分享
10-31 14:54
已编辑
门头沟学院 算法工程师
点赞 评论 收藏
分享
2 34 评论
分享
牛客网
牛客企业服务