阿里 / 百度 / 快手 / 网易 / 小红书实习面经合集

个人在七月份的一些实习面经~

P.S. 都是实习!实习!实习面试!重要的事情说三遍!!!

阿里夸克(搜索引擎 - C++)

C++:

  • 左值引用和右值引用
  • std::move()

LeetCode:

  • 多数元素(No. 169)

百度(音频引擎 - C++)

C++:

  • const 指针
  • constexptr 与 const 指针的区别(编译时进行常量的求值和运算)
  • new 和 malloc 的区别(类型安全、构造和析构、分配失败处理、大小计算)
  • 内存对齐(变量、函数、虚函数、静态变量、嵌套结构体)
  • vector 数组和普通数组的区别(要点:为何能追加元素)
  • vector 如何判断应该扩容(size 和 capacity)
  • vector clear() 是清空所有元素还是清空内存
  • 如何真正的清空 vector 内存(提示:与空 vector 做 swap 操作)
  • map 和 unordered_map 的底层实现、区别、查找的时间复杂度、应用场景
  • map 插入一个元素的时间复杂度(O(logn)
  • 类中 static 函数能否声明为虚函数(不能)
  • 构造函数能否声明为虚函数(不能)
  • 还有哪些函数不能声明为虚函数(内联函数、友元函数、非成员函数)
  • 如何保证类的对象只能被开辟在堆上(提示:将构造函数声明为私有、单例)
  • C++ 源文件编译流程(预编译 .i、编译 .o、汇编 .s、链接 .exe

Linux:

  • 查看指定进程占用的端口号(netstat & grep)
  • 打印某一列并按空格分隔(awk -F

MySQL:

  • MVCC 实现原理
  • 幻读是什么
  • 如何解决幻读问题(间隙锁)

OS:

  • 如何使用 gdb 排查多线程中哪个函数出现了死锁(info thread & thread 2 & bt
  • 一个线程会发生死锁吗(比如:多次尝试同一个锁、递归获取锁)
  • select / poll / epoll 的区别
  • epoll 底层实现
  • ET 和 LT 的区别

LeetCode:

  • 前 K 个高频元素(No. 347)

Expand:

  • 静态绑定和动态绑定
  • 虚函数表在哪个阶段被分配的(编译)
  • 虚函数表存在哪个区(常量区)
  • delete 和 free 的区别(类型检查)
  • push_backemplace_back 的区别
  • 浅拷贝和深拷贝的区别(举例说明)

快手(AI 软件开发 - Java - 一面)

Kafka:

  • 与其他消息队列相比、为什么 Kafka 性能更好(批量处理和异步、每秒千万级)
  • 多副本备份(Replica)
  • 主节点挂了怎么办(选举新的主节点)
  • 新的主节点是如何选举的(Zookeeper 一致性协议选举)
  • Kafka 基本架构(Broker、Topic、Partition、Group)

Redis:

  • ZSet 底层实现(跳表)
  • 介绍一下跳表及其插入、查找、删除的时间复杂度(均为 O(logn)
  • 过期淘汰策略(惰性删除 + 定期删除)
  • 持久化策略(AOF 和 RDB)
  • 主从节点如何同步数据(RDB 全量 + AOF 增量)
  • 一个新加入的从节点如何追上主节点(增加从节点性能、减少主节点写负载)

Network:

  • 介绍一下三次握手和四次挥手
  • 为什么不能是三次挥手(需要传输和处理数据)
  • 第一次握手可以传输数据吗(不可以)

gRPC:

  • 与 HTTP 相比 gRPC 的优点
  • HTTP 和 gRPC 哪个传输效率更高

MySQL:

  • 什么是聚簇索引
  • 聚簇索引和普通索引有什么区别
  • B+ 树和 B 树有什么区别
  • 什么是覆盖索引
  • 什么是回表
  • 解释一下不可重复读、脏读、幻读以及在什么情况下会出现
  • 如何解决幻读(间隙锁)

Personal:

  • Redis 分布式锁是如何实现的
  • Callback 回调函数是同步还是异步的

LeetCode:

  • 二叉树最大宽度(No. 662)
  • 环形链表(No. 141)

小红书(机器学习平台开发 - C++)

C++:

  • 介绍一下虚函数(多态)
  • 如何用 C 语言实现 C++ 虚函数(定义虚函数表、初始化虚函数表指针)
  • static 关键字
  • 能否在普通函数内部声明 static 变量、作用是什么(可以、全局变量)
  • 什么是内联函数(将函数代码直接插入到调用点、例如 add(x, y) 直接变为 x + y
  • 内联函数为何能提升执行效率、举例说明(普通函数需要传递参数、创建和销毁栈帧)
  • 一次函数调用在编译过程是什么样的(关键:将函数返回地址压入堆栈或寄存器中)

Shell:

  • grep & awk

LeetCode:

  • 滑动窗口最大值(No. 239)

快手(AI 软件开发 - Java - 二面)

Golang:

  • 如何理解 Go 线程和协程(协程是轻量级线程)
  • 为什么 goroutine 性能更好(轻量级、并发调度、channel)
  • 什么业务需求要开 goroutine
  • 普通的加减乘除(函数)计算需要单独开一个 goroutine 吗
  • n 个协程和一个协程做计数哪个效率更高

OS & Network:

  • 如何判断服务器性能是否符合预期、或达到性能瓶颈
  • 客户端(多线程)和服务器(多线程)通信需要建立几个 TCP 连接(一个)
  • 服务器如何区分来自客户端不同进程的 TCP 报文(源 IP 和端口号)

网易(全栈开发)

Docker:

  • 介绍一下底层 cgroup 和 namespace
  • 经常使用哪些命令

MySQL:

  • 说一下表锁和行锁
  • 写一个能够触发行锁的 SQL 语句
  • 什么情况下能触发记录锁、是否需要为索引

Golang:

  • goroutine 异常退出能释放 Redis 分布式锁吗(不能)

Expand:

  • join 和 detach 线程的区别(join 阻塞等待、detach 后台运行)
#我的实习求职记录#
全部评论
你怎么什么都会😨😨
5 回复 分享
发布于 2023-07-29 20:35 北京
tql 今天对着这个面经补了一整天
3 回复 分享
发布于 2023-07-30 21:04 广东
干活满满,火速学习
3 回复 分享
发布于 2023-07-29 19:17 广东
真牛啊
2 回复 分享
发布于 2023-07-31 20:33 北京
校友牛的👍
1 回复 分享
发布于 2023-08-07 09:49 陕西
牛逼
1 回复 分享
发布于 2023-08-02 23:22 湖北
佬真的无时无刻不在面试
1 回复 分享
发布于 2023-08-02 18:37 北京
太强了
1 回复 分享
发布于 2023-08-02 17:16 浙江
佬的八股,是我可望而不可及的水平
1 回复 分享
发布于 2023-08-02 15:52 上海
“如何保证类的对象只能被开辟在堆上(提示:将构造函数声明为私有、单例)” 老哥这题不全哦,是将析构函数声明为私有 可以让类对象只被开辟在堆上。因为栈上变量需要自动调用析构函数。
1 回复 分享
发布于 2023-07-31 12:56 北京
太强了吧全栈人才
1 回复 分享
发布于 2023-07-31 01:31 上海
你真的好猛啊
1 回复 分享
发布于 2023-07-31 00:18 广东
tql 今天对着这个面经补了一整天
1 回复 分享
发布于 2023-07-30 21:43 广东
1 回复 分享
发布于 2023-07-30 17:08 上海
1 回复 分享
发布于 2023-07-29 22:21 广东
阿里就这么点吗 不会全部问项目吧
点赞 回复 分享
发布于 2023-09-10 00:36 北京
m
点赞 回复 分享
发布于 2023-08-21 11:49 广东
同学,阿里控股集团JAVA开发岗投吗?我们和其他业务集团独立招聘,可以多次机会。需要的话,可以联系我。
点赞 回复 分享
发布于 2023-08-15 19:52 浙江
AIGC项目急招后端实习生,运营实习生,UI设计实习生,支持远程实习,想攒攒实习经历的话,欢迎来私聊了解~ (PS:没有经验也没关系,我们都是大厂老司机出来创业的,能够提供专业的指导,后期也能帮你润色简历,直推大厂)
点赞 回复 分享
发布于 2023-08-03 19:17 北京
太猛了
点赞 回复 分享
发布于 2023-08-01 17:21 广东

相关推荐

04-26 11:02
门头沟学院 Java
一共 45 分钟左右,无手撕。1.自我介绍2.项目3.netty 基于什么协议?tcp 和 udp 有哪些 不同 ?udp 可以应用在哪些场景?了解过 websocket 吗?4.如何解决粘包半包问题?5.你说你 netty 自定义了协议,介绍一下。6.arraylist 和 linkedlist,arraylist 线程安全吗,为什么不安全,如何能线程安全,java 中有线程安全的数组集合吗?7.hashmap 扩容机制,线程安全吗?有哪些线程安全的?两个版本的 concurrenthashmap 底层有哪些不同?8.如果一定对象要作为 hashmap 的 key 请问有什么要求?9.equals 和==10.synchronized 修饰函数和 synchronized 修饰代码段有什么不同?synchronized 括号中的对象有哪些要求,是否随便一个对象都可以?11.Collections.synchronizedlist 将 arraylist 包裹了,后面遍历的时候还需要加锁吗,为什么?12.如果一个 java 程序内存占用过高,怎么进行排查?如何区分内存泄漏和大对象?如果是内存泄漏的话如何找出是被谁持有的?13.介绍一下双亲委派机制,为什么要有这个机制?14.介绍一下垃圾回收算法。反问1.业务2.暑期实习面试流程感觉和面试官聊的还可以,最后反问结束面试官还提醒我参加晚上的笔试。结果 20 分钟后发邮件流程结束,取消笔试
查看14道真题和解析
点赞 评论 收藏
分享
04-25 15:23
南开大学 Java
已经凉啦,发出来攒攒人品吧一面:基础平台研发工程师 45min【感觉挂了结果第二天没有电话通知默默发了面试邮件?】1. 自我介绍2. 项目拷打(不知道为什么会觉得这是实习问了好几次,其实后面问题都是基于项目问的)3. 负责部分4. 喜欢哪个方向的技术5. 项目难点6. 是否有压测?追问用多少个Java实例压测的(因为测的是Redis秒杀)?7. 负载均衡怎么做?(我扯了好多RedisMySQL,他说先回到前端请求第一步来考虑(懵了好久才理解他在说Spring那层),然后没想到nginx之类的中间件,直接瞎说在前端可以用hash来分发,后来被点了nginx)8. Redis自己搭的吗?怎么实现备份?怎么实现高可用?集群节点挂了咋办?哨兵模式原理?9. SpringBoot和SpringMVC区别?MVC是什么?(我只知道SpringMVC不知道MVC。。。被提示知道servlet吗,但是Spring真没了解这么深)过滤器和拦截器的区别及各自的应用场景?(强行答了几个被问还有吗,哑口无言)怎么设置Spring框架参数使单个Spring可以支撑5000个用户并发做请求?(其实我对5000个用户毫无概念,也不会设置参数)提示Spring默认线程数是多少?(还是不知道)10. Java项目跑起来之后怎么动态查看堆栈和内存具体内容?用什么工具去看?(记得有命令但是一个都没记)11. JVM方法区干啥了?解释方法区、堆、栈的概念。12. 网络socket编程有做过吗?(我说课设用C++写过)backlog是什么?(再次哑口无言)13. 平时有看开源项目或者开源代码的习惯吗?(老实回答不经常)那平时从什么地方获取技术资料?14. 了解过AI吗?了解过大模型吗?有没有试过本地跑模型调接口来测试大模型能力?(都没有救命,只学过很基础的机器学习算法)15. 自己是喜欢搞计算机的吗?(不知道是不是觉得我太菜了一点都不研究技术)16. 反问(请求提建议:搞清楚基础,比如JVM及其基本命令、socket原理、servlet;学会调优的一些东西,比如Redis高可用、负载均衡怎么做;要多了解最新技术)17. 大学在哪里?确定做开发不做算法吗?18. 看看笔试成绩,没看到,说回去结合看一下。二面 32min完全没怎么问八股啊,全在问我怎么学习。处于一个既不敢撒谎但是不撒谎就显得很垃圾的状态。1. 自我介绍2. 拷打项目:项目背景是?多少人开发?技术挑战是?瓶颈在哪里?3. Redis的学习链路?有看源码吗?你理解的Redis架构是怎样的?4. 有用别的数据库吗?MySQL存了多少数据?如果存了很多数据会有性能问题,怎么办?5. 根据用户ID取模水平分表,但要查城市ID下面的用户,怎么查?6. 那如果还要进行一个全局的排序呢?7. 后端的网络层是怎么实现的?有做过socket网络编程的程序吗?8. 自己会挖掘一些什么样的技术方向?举个例子?9. 每周花多长时间写代码?你觉得刷算法题有什么用?编程有时候也挺枯燥的,你怎么觉得?10. 未来有什么个人规划?11. 有关注过业界的一些技术方向的发展吗?对AI了解多少?现在大模型能具备这么强的一个语义理解能力是为什么?AI产品对你的学习工作有什么影响?12. 你觉得自己比较大的优势和缺点是什么?为什么你认为自己理解能力好?13. 为什么不读研?对深入研究和去工作这两个事情你的思考是怎样的?14. 为什么这么想做业务开发?这个兴趣的支撑点是什么?(因为我老是提到想做业务开发。。。)15. 反问:部门业务?加入需要提升的能力?【第三天早上看默默挂了,不知道为什么#牛客AI配图神器#连第二志愿都消失了】#阿里求职进展汇总##面经java#
查看28道真题和解析 阿里求职进展汇总
点赞 评论 收藏
分享
评论
60
318
分享

创作者周榜

更多
牛客网
牛客企业服务