面对众多的面试我也做了很多的准备,更是从朋友哪里哪里搜集到了最新BAT等大厂的面试真题,在这里我也给大家分享下我准备的资料,资料获取方式:
加Java高级互联网架构:964357187
点击链接加入群聊【Java高级互联网架构】:
背景:
211渣硕,电气专业转JAVA后台,看书很少多数是在刷面经,能找到工作实属侥幸,现献上自己的面经,希望能帮助到别人
部分面试结果:
先上总结:
- 如果实力不够硬建议还是海投,会很累,但机会多一些,我投了200+家,笔试100家左右,面试三四十家,过了7家,那段时间每天少则3场多则7场。
- 心态一定要稳住,提前批能试就试,过不了也别气馁,毕竟厉害的人很多,就当攒经验了;
- 感觉上华为小米海康比纯互联网公司的难度要低一些,也是不错的选择
- Offer意向书、口头offer统统别信,“hr面不刷人”和“hr面都过了肯定没问题”的言论也别信,老老实实面下一家去
下面为面经:
包括阿里、百度、京东、有赞、美团、大华、58、顺丰、IBM、贝壳、招银、搜狗、滴滴、千寻位置、华为、小米、去哪儿、海康
阿里内推Java一面:
- 自我介绍、项目
- Linux查看cpu命令,常用命令
- Linux程序如何调试
- Top k
- 数组乱序
百度内推Java一面:
- 自我介绍
- 项目
- Hashmap结构
- http、https区别
- http请求总过程
- tcp三次握手四次挥手
- osi五层
- GC,如何标记需回收
- 设计一个发号系统
有赞内推一面:
- 自我介绍、项目
- 项目架构图,服务间通信
- http状态码
- http请求总过程
- http报文结构
- 三次握手四次挥手
- 悲观锁乐观锁
- Exception分类举例
- Hashmap扩容
- List保持顺序原理
- List、set区别,能不能放null
- 死锁四个条件,如何避免
- 多线程优缺点
- 原子变量AtomicInteger
- 线程池
百度基础平台一面:
- 自我介绍、项目,服务间通信方式
- Public、private、protected
- GC,大对象放哪
- 四种引用
- 倒排索引
- Finalize()
- 重载和多态
- 如何实现线程
- Mysql引擎,锁粒度,索引
- 写join查询语句
- 三次握手四次挥手
- 单例模式
- 反转链表
- N!末尾有多少个0
百度基础平台二面:
- 自我介绍、项目
- 详细聊项目
- 环形链表去元素
- 感兴趣哪个方向,未来几年规划
美团点评一面:
- 自我介绍、项目
- Hashmap结构、扩容、安全性,替代方案
- http状态码
- 1.8新特性
- GC,是否新对象都放在eden
- Integer和int
- System.out.print(“ff”+null)
- cpu过载是什么情况
- 链表反转
- 100个数数组随机抽10个放入新数组
- 栈实现队列
- 是否是同一棵树
- 取出数组中只出现一次的数
- 数组中放着Date格式时间,找出最近的时间
美团点评二面:
- 求n内的质数
- Sql语句查学生总成绩排名
- Java一次编译到处运行原理、是什么设计模式
- 类加载机制
- 线程池,并发工具包
- 内存溢出
- 静态内部类
- 成员变量局部变量是否可以不初始化
百度核心网络:
- TCP拥塞、过程、排序、序号
- https哪里可以劫持
- udp和tcp区别,视频直播用什么
- 数组中出现次数过半的数
- PHM数据无意义
IBM一面:
- 项目
- 最长回文
IBM二面:
- 链表反转
- Java优缺点
- 字符串倒序
- 英文介绍项目
- 接口和抽象类区别
大华:
- 优势
- 职业规划
- HTTP请求头
京东一面:
- 自我介绍
- 项目
- Java.lang/util
- 倒叙查找表内100条数据
- 网页打开慢原因,前端优化方案
- Map.containsKey
- 数据库索引类型
- 插入排序
- ArrayList和LinkedList区别,list数据排序
- Top、ps、cat
京东二面:
- 自我介绍
- 项目
- Xml标签如何识别
- 字符串如何排序
- 各类锁,公平锁,死锁
- SNMP为什么简单
- 线程池
- SpringMVC,什么设计模式
- ArrayList
- 优势
京东hr面:
- 介绍一个项目
- 对京东的了解
- 优势
- 与同事意见不合怎么办
- 怎么个生活工作平衡
- 能接受加班吗
- 缺点
58一面:
- http和https
- 项目
- 火车拉货次数问题
- 设计电梯对象、警报、策略
- 线程池,核心线程数怎么定
- 源码看过吗
- 数组中最大的前几个数
58二面:
- map接口的实现类
- treemap
- 数组中最大的前几个数
- 将数组中的奇数排在前面
- 堆排序时间复杂度
顺丰一面:
- svm怎么多分类
- 二叉树从右边看到哪些
- 行列都增加的二维数组找数
海康一面:
- 项目大框架
- 哪些offer
- 写两个设计模式
- 数据结构和算法了解情况
海康hr面:
- 抗压能力
- 自我介绍
- 加班看法
- 工作地点
- 兴趣爱好能不能上台表演
- 为什么胜任这个工作
- 问问题
搜狗一面:
- 自我介绍
- 介绍一个项目
- map原理,何时替换
- linkedhashmap和treemap
- volitile原理,用处
- 内存溢出和内存泄漏,未释放连接耗费哪些资源
- 线程池,核心线程是什么,队列作用
- tcp三次握手四次挥手,close_wait在哪
- 数据库什么数据结构,画B+树
- 数据库隔离级别
- insert锁级别,间隙锁,作用
- 将两个有序队列排成一列
- 实现线程方法
- 讲讲内存模型
- 解决问题能力
贝壳一面:
- 斐波那契数列f(n)的后5位
- 两个字符串的不同字符数
- 生成一个字符串,可插入可复制,最小代价
贝壳二面:
- 主线程等待10个线程运行完再执行代码
- IO原理,什么设计模式
- 数据库隔离级别及解决问题
- 日志查询5min内访问超过1000次的ip
- 设计数据库存储学生、课程、成绩
- Springcloud用过哪些
- Spring的IOC、AOP原理、作用
- 写适配器模式,为什么代理模式
- Spring如何实现事务
百度一面:
- 写线程死锁
- 生产者消费者模型
- 链表去重
- 快排
- 类加载器
- NIO
- JVM调参
- 数据库找都75分以上的人
- Linux程序反应慢怎么排查
招银一面:
- 怎么实现高并发
滴滴一面:
- 自我介绍
- 项目
- http,socket编程结合三次握手
- Select,epoll
- 数据库索引,存储结构,B+和hash,内存为什么用hash
- 进程调度
- 短连接长连接,什么作用
- 数组倒置
- 二叉树求和
- 滴滴每日数据量
- 如何显示周围汽车数
- TCP建立连接后服务端断开会怎样
- 反向代理
- 写没写过服务器
- NIO
- http方法,get和post区别
- https原理
- 红黑树在linux中的应用
- Hashmap的链表结构
陌陌一面:
- 一个字符串是否是另两个字符串组合而成,顺序不能变
- 手撕LRU
华为一面:
- 自我介绍
- 项目
- 手撕字符串分别取出大小写字母和数字排序输出
- 解决问题能力
华为二面:
- 自我介绍
- 项目
- 手撕约瑟夫问题
小米一面:
- 自我介绍
- 项目
- 手撕链表按大小顺序插入节点
- 堆的应用
- 数据库索引
小米二面:
- 自我介绍
- 项目
- 手撕快排
- JVM原理
- TCP握手挥手,如何保证可靠、顺序
- 什么是敏捷开发,如何保证质量
千寻位置一面:
- 自我介绍
- 项目
- NIO
- 数据库索引
- Hashmap结构、冲突解决、链表优化
- Synchronize能重入吗
去哪儿一面:
- 自我介绍
- 项目
- 如何实现联想(输入法或百度打字联想出其他词)
- 解决问题能力和分享经历
- 多重if如何优化
- 自学和分享经历
- 策略者模式
- 如何在linux中递归查找某个文件名
- NIO
- Hashmap结构、冲突解决、链表优化
- 看过哪些书
去哪儿二面:
- http请求头
- 手撕链表翻转
- http和https
- List、set、map是类还是接口,继承自哪里
- OSI七层
- Cookie和session
- Synchronize用在静态方法和非静态方法上是什么锁,什么区别
- Linux中常用命令
- 红黑树插入删除排序查找时间复杂度
去哪儿hr面:
- 自我介绍
- 在项目中学到了什么
- 与同事对问题发生争执时怎么做
- 薪资要求
以上的就是面经内容,在此,我希望能给大家带来一点点帮助,祝大家编程愉快!