分享一些面经

秋招以来投了不少公司,包括阿里,雷火,网易,拼多多等等,到现在差不多结束了,结果还可以,分享一些面经回馈牛客
我是java开发岗,在面试过程中,遇到的问题主要分为四个方面:项目 基础 算法 发散性问题,可能不同公司侧重不同,但大体是在这四个方面之内的。

首先说项目,要事先准备好:
项目做了什么
你在其中起到了什么作用,用了哪些技术
遇到过什么技术难点
项目最终达成了什么效果
值得注意的是,一定要把项目中遇到的技术搞懂,我踩过一个坑就是,一个项目中用到了hbase,结果某个面试官问hbase的rowkey设计原则有哪些,没答上,后面就凉了。

再说算法,由于我遇到的手撕代码问题不是很困难,大概剑指offer的难度,遇到过的题目有:
67891234这样的数组中找到下降点
2233114453311 这样的数组中找到出现一次的那个数字
两个栈实现队列
判断一个字符串中出现的括号是否相匹配
实现平衡二叉树的插入删除
快速排序
合并数组……
难度不一,刷题就完了

发散性问题,可能要积累一些分布式的理论,积累一些经验,我遇到的问题有:
实现一个秒杀系统
实现一个优先级队列
自己实现spring 的ioc怎么做
如何用udp保证可靠性
……

关于基础,也是整理了一下遇到过的问题,具体如下:
网络:
OSI七层网络模型,常见协议作用于哪层,交换机和路由器区别,ping指令原理
TCP与UDP区别 TCP的流量控制和拥塞机制 三次握手和四次挥手
浏览器输入URL,流程
DNS域名解析过程
HTTP状态码

数据库:
数据库基本语句
mysql索引
Innodb和MyISAM区别 稀疏索引和密集索引
mysql最左匹配原则
mysql事务隔离级别 事务并发产生的问题
mysql的锁 mysql的死锁
MVCC
三大范式

JAVA:
类加载器都有哪些 双亲委派机制
反射机制
JAVA内存区域(堆 栈等) JAVA内存模型(工作内存 主内存等)
垃圾回收:年轻代老年代 回收算法 垃圾回收器等
内存溢出的原因 如何排查
强引用 弱引用 软引用 虚引用

多线程:
进程和线程区别 多进程和多线程区别
创建线程的几种方法
什么是线程安全 如何实现线程安全
ThreadLocal相关
synchronized相关:锁住的是什么,实现原理,1.6优化,和lock的区别
CAS乐观锁原理
几种线程池 参数含义 如何选择
线程同步方式
线程通信方式

JAVA基础:
封装 继承 多态
Error和Exception区别
Arraylist和linkedlist
stringbuffer和stringbuilder
equals和hashcode
wait和sleep
hashmap实现原理 扩容 concurrenthashmap
接口和抽象类

spring相关:
ioc 含义和原理
aop 含义和原理
spring mvc流程
spring事务

设计模式:
写一个单例模式
说说你熟悉的设计模式 在哪里使用过

操作系统:
死锁:产生条件 避免死锁 解除死锁
进程间通信方法
cpu调度算法
页面置换算法

算法:
排序算法(冒牌排序 快排 堆排 归并排序)时间复杂度和空间复杂度 优化
二叉查找
二叉树遍历
链表反转
……

最后再分享两个hr面会遇到的问题:
做过的项目中遇到过什么困难
如果让你重新做这个项目,会有哪些需要改进的地方
还有就是一些常规性的问题,对公司的基本了解之类的

以上。
祝大家都能拿到心仪的offer。


#阿里巴巴##拼多多##面经##Java工程师##网易#
全部评论
感觉博主的帖子
点赞 回复 分享
发布于 2019-09-04 00:28
大佬太强了,感觉还是阿里和pdd里面选吧
点赞 回复 分享
发布于 2019-09-03 22:46
你好,想问一下,面试这些大厂一定要有很好的项目啊。如果是那些SSM项目,是不是就直接被刷了,求解答😁,谢谢
点赞 回复 分享
发布于 2019-09-03 22:58
hy niubi
点赞 回复 分享
发布于 2019-09-04 00:34
pdd会不会太忙了,据说阿里现在不少部门是双休的欸
点赞 回复 分享
发布于 2019-09-04 10:40

相关推荐

害怕一个人的小黄鸭胖乎乎:笑死了,没有技术大牛,招一堆应届生,不到半年,代码就成屎山了
点赞 评论 收藏
分享
9 129 评论
分享
牛客网
牛客企业服务