百度2023暑期实习Java面经(已OC)

4.4 一面

Java

  1. 对象分配,一般new出的对象都在堆上,什么时候会在栈上分配
  2. 标量跟聚合量这两个的定义

多线程

  1. JVM给对象分配内存时,会有多线程并发问题,怎么解决内存分配过程中的线程安全性
  2. 抛开JVM分配内存的这个动作,JAVA里如何保证线程安全,你知道有哪些机制吗
  3. synchronized和reentrantlock区别是什么
  4. CAS缺点
  5. 在主线程new一个异步线程,异步线程出现异常,主线程怎么能catch到这些异常
  6. 如果我不想用future.get,我不想阻塞主线程,那还有方法吗

设计模式

  1. 装饰模式,它跟代理模式有什么区别

算法题

  1. 实现LRU,要求get和put的时间复杂度是O(1),用什么数据结构,思路
  2. 双向链表+hashmap,Java:LinkedHashMap
  3. 链表里的节点:key,value,previous,next

4.7 二面

多线程

  1. 怎么用多线程,在什么场景使用,中间遇到什么问题,怎么处理的
  2. 多线程数据同步有什么方法
  3. 线程池有什么,有什么区别
  4. 线程池参数
  5. 阻塞队列满了之后,线程池怎么处理

MySQL

  1. 事务概念
  2. 索引失效的场景
  3. 讲了联合索引
  4. 那单个索引呢

Redis

  1. 缓存雪崩,击穿,穿透分别是什么,怎么避免
  2. Redis实现分布式锁

计算机网络

  1. TCP与UDP协议的区别,以及应用场景,展开问了很多。

算法题:

  1. 怎么检测链表成环?如果不成环的话,边界条件是什么,怎么就结束了?

4.11三面

Java

  1. 常见的垃圾收集器,
  2. G1 特点
  3. 程序内存溢出,排查方法是什么
  4. 多线程编程,怎么控制线程的执行顺序
  5. 锁机制,什么是悲观锁,实现方式是什么
  6. Java锁对synchronized的优化过程
  7. 泛型

MySQL

  1. 索引的原理
  2. 联合索引,什么时候失效
  3. 怎么看有没有走索引
  4. 用java怎么操作数据库,怎么实现事务,代码怎么写

场景题

  1. 一个非常大的文件,多行,每行有多个字符串。怎么找出出现频率最高的字符串,以及出现次数。只用一台机器,内存有限。
  2. 实现一个平台,收集大量的日志,怎么实现收集、存储、检索;存储方式就意味着检索方式。

4.14 收到测评邮件和hr电话

4.18 收到正式邮件

#百度信息集散地#
全部评论
算法题有解题思路吗
1 回复 分享
发布于 2023-04-07 19:54 辽宁
老哥啥时候笔试的 a了几题呀
点赞 回复 分享
发布于 2023-04-07 18:30 北京
大概面试了多久
点赞 回复 分享
发布于 2023-04-07 20:12 黑龙江
百度问的简单很多啊
点赞 回复 分享
发布于 2023-04-26 08:04 浙江

相关推荐

我见java多妩媚:大外包
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
10-15 14:22
点赞 评论 收藏
分享
21 58 评论
分享
牛客网
牛客企业服务