百度 java 面试题一

一面(现场)

  • 自我介绍

  • Java中的多态

  • Object类下的方法

  • Finalize的作用和使用场景

  • Hashcode和equals

  • 为什么要同时重写hashcode和equals

  • 不同时重写会出现哪些问题

  • Hashmap的原理

  • Hashmap如何变线程安全,每种方式的优缺点

  • 垃圾回收机制

  • Jvm的参数你知道的说一下

  • 设计模式了解的说一下啊

  • 手撕一个单例模式

  • 快速排序的思想讲一下

  • 给个数组,模拟快排的过程

  • 手写快排

  • 设计题,一个图书馆管理系统,数据库怎么设计,需求自己定

二面(现场)

  • 自我介绍

  • 项目介绍

  • Redis的特点

  • 分布式事务了解么

  • 反爬虫的机制,有哪些方式

  • 手撕算法:反转单链表

  • 手撕算法:实现类似微博子结构的数据结构,输入一系列父子关系,输出一个类似微博评论的父子结构图

  • 手写java多线程

  • 手写java的soeket编程,服务端和客户端

  • 进程间的通信方式

  • 手撕算法: 爬楼梯,写出状态转移方程

  • 智力题:时针分针什么时候重合