秋招提前批|晚来的百度提前批面经,后台开发面了8轮

作者:小明1
链接:https://www.nowcoder.com/discuss/255625
来源:牛客网

7月参加了百度提前批面试,参加了8轮面试,拿到了两个部门的Offer。今天刚刚做了人才特质测评,分享一下面试过程中的问题。由于时间过去太久,就不按照一面、二面的形式写了,只按照问题的范围做个简单的整理(可能会有遗漏)。

  • Java
    由于我很久不写Java了,面试官只问了一些比较简单的问题。
  1. HashMap内部原理
  2. StringBuilder、StringBuffer异同点和使用场景
  3. 泛型类、泛型接口、泛型方法的特点,写对应的demo代码。
  • C++
    c++部分问的比较多,从基础到深入的都有。
    1. new、malloc的区别
    2. inline、define的区别
    3. 多态的实现原理
    4. 虚析构函数(原理、使用)
    5. gcc里在main函数之前执行代码的方法
    6. delete this之后会发生什么?delete this的使用场景
    7. 如何实现只能创建在堆或者栈上的类
    8. vector、map的底层实现
    9. 模板偏特化、SFINAE
    10. volatile的原子性
    11. c++编译过程,如何查看编译过程中生成的中间文件
    12. c++程序内存布局、const变量存储在那个区域
    13. 名字修饰、如何查看符号表
    14. 引用和指针的区别
    15. 什么情况下出现重定义错误,如何避免
    16. extern关键字的用法
    17. 内存泄漏出现的场景和解决方法
    18. 智能指针的原理和使用,为什么要有weak_ptr
  • 计算机网络
    1. 三次握手、四次挥手
    2. 浏览器输入网址的处理流程,arp协议处理流程
    3. time_wait出现的时机,过多时处理措施
    4. close_wait出现的时机
    5. 网络相关的shell命令
    6. 拥塞避免的详细实现
    7. 流量控制和可靠传输的实现原理,滑动窗口的原理
    8. UDP和TCP的区别
    9. keepalive、SO_REUSEADDR、SO_REUSEPORT
  • Linux
    1. 查看系统占用的命令
    2. epoll的实现,epoll处理过程中是否加锁,什么时候加锁
    3. epoll边缘触发和水平触发的区别
    4. 阻塞、非阻塞、同步、异步的特点
    5. 容器的实现,cgroup和namespace
    6. grep命令的使用,从日志中过滤耗时过长的日志
    7. cfs调度算法的特点和实现原理
    8. 硬连接、软连接的区别,inode的内容
    9. EAGAIN的含义和出现的场景
    10. 进程和线程的区别
    11. 线程进行同步的机制
    12. IPC机制
    13. pcb中的内容
    14. Linux系统中的锁
  • HTTP
    1. HTTP的常用请求方法,option的作用
    2. HTTP的错误码及含义
    3. HTTP常用header
    4. HTTP报文格式,如何使用C++填充HTTP报文
  • MySQL
    1. MySQL数据组织(索引段、回滚段、数据段, 页面、行记录等)
    2. innodb和MyISAM的区别
    3. hash索引和b+树索引的特点
    4. 索引失效条件、联合索引的最左匹配
    5. 辅助索引
    6. hash join的原理
  • 数据结构和算法
    • hash表的实现、冲突处理办法、rehash
    • 红黑树的特点,和B+树的对比
    • 排序算法的稳定性
  • Kafka、Redis、MQ以及其他
    1. Kafka如何防止消息丢失
    2. Kafka和MQ的异同点
    3. 为什么要使用Kafka代替MQ
    4. Kafka使用过程中发现的问题
    5. 用过的Redis的数据类型及常用命令
    6. Redis常用数据类型的底层实现
    7. redis中set底层使用的hash是不是数据类型hash
    8. redis读取网络输入时,读取数据时是读到EAGIN为止吗?
    9. redis如何实现原子化的get、set
    10. redis持久化的方式,rdb持久化会在当前线程进行吗?会使用新的进程还是线程来做?
    11. RESTful的概念
  • 编程题目
    1. 两个数组求交集
    2. 图的BFS、DFS遍历
    3. demo说明会模板编程
    4. 字符串匹配(朴素匹配算法)
    5. 数字串分割成ip地址,返回所有可能的分割结果
    6. 利用快速排序的思想对链表进行排序
  • 只说思路的算法题目
    1. 在一个流中随机取100个数
    2. 01字符流,随时可能停止,判断停止时对5取余的结果
  • 系统设计
    设计秒杀系统,说明从前端到数据库如何设计;后端如何保证结果的一致性
  • 除了上面的问题,还有一些智力题、项目相关以及个人自身相关的问题就不贴出来了。

    与作者交流:https://www.nowcoder.com/discuss/255625

    更多笔经面经:https://www.nowcoder.com/discuss?

        原文作者:牛客网
        原文地址: https://zhuanlan.zhihu.com/p/83715698
        本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
    点赞