百度C++/PHP一面(长达2h20min问蒙蔽了)
一、算法(直接共享屏幕在leetcode上做的):
1.T268缺失数字(easy高斯求和-给定数组和)
2.T62不同的路径 (midum动态规划)
能不能直接给出计算公式(排列组合)
二、语言基础
1. 什么是右值引用,什么是右值,右值如何变左值(move函数)
2. 智能指针,智能指针是否是线程安全的(部分线程安全),shared_ptr的实现原理
3. 宏和内联函数的联系和区别(参数类型检查)
4. 析构函数一定要设置为虚函数吗,为什么
5. 多态有几种实现机制
6. 面向对象三大特性
7. Class和struct的区别
8. 什么是大端小端,什么是网络字节序和主机字节序
9. 虚函数表是所有类共用一个吗
10. 指针和引用的区别
11. 说一下const关键字
12. 说一下explicit关键字(使用情形:单参数构造函数 重载)
三、计算机网络
1. TCP/IP体系结构说一下,各层有什么协议
2. TCP和UDP的区别
3. TCP怎么保证可靠传输的
4. 三次握手,为什么进行三次握手(同步随机生成的序列号,防止中间人攻击)
5. Timewait状态出现在那一侧
6. 为什么要等待2MSL
7. 说一下拥塞控制,超时和收到三个ACK的窗口大小是一样的吗为什么
四、数据库
1. 你了解的索引类型
2. B数和B+树有什么不同
3. 索引类型有哪些
4. 索引失效问题,如果对字段A字段B建复合索引,查询语句where B=x,是否用到索引?为什么
5. 建索引,字段A字段B复合索引,查询字段ABCD数据库的查询过程
6. Mysql的存储引擎,Innodb和myIsam两者有什么不同
7. 事务四大属性,什么是隔离性,mysql的隔离级别
8. 什么是幻读,MySQL可重复读是否能够解决幻读问题(间隙锁和next key)
五、linux相关
1. 软硬连接区别
2. 命令cat filename|grep xxx实现原理,怎样跨进程进行文件读写
3. 线程池的实现
4. 条件变量返回但是没有获取到锁怎么办,wait是原子操作吗
5. 文件名称存在哪里(目录项),目录项是什么,文件存放位置在哪可以查看
6. 进程通信机制
时间太久了,很多问题记不起来了,记起来再补充。
PS:百度的小哥哥超级帅,戴着口罩都觉得帅!而且超级耐心,不会的话会告诉答案,然后看什么资料也会和你说。一般就是问一个问题,然后扯出一堆相关联的问题,不断深入,问到不会为止,面试体验nice,就是时间太久了,可能一些问题我不会小哥哥不断把跑偏的我拉回来也废了不少时间,当晚预约二面,希望二面表现佳!
全部评论
(14) 回帖