小言_互联网的博客

930页!熬夜整理了一份包含算法+数据结构+大厂面经 高分原创文章的电子书送给你

327人阅读  评论(0)

前言

在看面试题之前先看看几组对话吧:

其实我收集了很多很多的内容,但是篇幅的原因,我就不一一罗列了,我也经常看到群里朋友说看完我一些文章之后拿到不错offer,说真的我还有很多技术栈还没写,能拿offer主要还是靠大家,不过大家在我文章有所收获我是很开心的。

特别是很多读者都是10k以内到 14k -18k什么的,在我大厂同学眼里可能没什么因为大家应届进去就是很高的base了,但是我知道对很多朋友来说,太重要了,这样的一次机会不亚于一次重生。

因为我所有的业余时间基本上都是写文章,写稿子,拍视频,剪视频,所以大家给我私聊,我不一定都会回,但是我基本上都会去看一下,很多时候难免有所感慨,有很多读者像写信一样的表达他的经历,表达他的感情。

有感动,有感慨,说真的写东西本身就是我的一个兴趣爱好,我也没想到能写到今天这样了,偶尔和身边的朋友聊起都觉得很神奇,更没想到的就是还真的能帮助到很多朋友,说真的我其实没想过能帮到这么多人,甚至现在这么多人认识我,知道我。

读者经常说拿着我的简历模板去面试,结果被面试官问,这不是敖丙的简历模板嘛?我觉得真的是哭笑不得,不过表现欲极强的我还是很开心。

还有小伙伴在地铁上看到别人看我的文章,看我的视频,我也觉得诶好像有那么点意思哈,丙也算是出圈了。

最近时间也多了起来,我会慢慢恢复技术文的更新的(毕竟大家年中跳槽的都在准备了嘛哈哈),暖不暖吧?

下面呢就是一位读者分享他几次面试的面试题总结,答案在我之前写过的文章中基本上都能找到,一二面都是偏基础的大家看看基本上就是这些东西,我都提到过,三四面就很偏项目了,所以大家还是要好好准备项目哟。

大厂面试题

域起网络 ----- 一家游戏公司30分钟 电话面试

1、讲一下GC的过程

2、什么样的对象会被老年代回收

3、为什么要设置S0,S1区

4、什么样的对象可以作为GC roots

5、多线程的异步调用怎么实现的

6、讲讲你最常用的单例模式 (我答的双重检测)

7、双重检测的INSTACNE为什么要用voliate修饰

8、voliate怎么保证可见性的

9、Sychonized的作用是什么

10、Sychonized 和 lock的区别

11、排序算法以及时间复杂度

12、讲讲代理模式

13、网络编程有了解吗,讲讲TCP/UDP的区别

14、为什么UDP速率比TCP快

跟谁学(文思海辉)-- 视频面试 44分钟

1、JVM调优的工具和命令,jstat 查看状态都有哪些

2、线程的状态

3、wite 不需要时间吗 sleep 和 wite 锁的区别

4、线程池了解过吗,7种参数

5、线程池的阻塞队列用的最多的是什么

6、ArrayBlockingQuene 和 LinkdeBlockingQuene的区别是什么

7、ArrayList 和 LinkedList的区别是什么

8、ArrayList为什么查询比较快,查询是怎么查的

9、List的线程安全实现有哪些

10、CopyOnWriteList 的写锁是怎么加的锁

11、项目中遇到挑战在哪里

12、Oracle和 Mysql的隔离级别为什么不同

13、怎么查看Mysql的sql执行情况

14、Explain sql 中参数

15、Redis中的zset和Three set有什么区别

16、Three set是怎么实现排序的

17、还知道哪些可以排序的树 我说的B+ 树

18、B+树的运用场景,我说的Mysql中的索引

19、是所有索引都用的B+ 树吗,哪些用了

20、一道算法题 写一个数字反序的方法 我写的没有考虑溢出的情况

快手 – 视频面试30分钟

1、谈一下项目

2、谈一下对IOC和AOP的理解

3、Memchached 和 Redis 的区别

4、Redis的持久化实现

5、Redis的淘汰策略

6、定期删除和惰性删除的区别、优缺点

7、IOC的原理是什么

8、Hashmap的底层实现和原理

9、手写一个,实现map的put方法

学堂在线 – 视频面试20分钟

1、说下spring事务,@Transition 这个注解在哪些情况下不会生效

2、Synchronized 基本原理

3、Synchronized和ReentrantLock 都是可重入锁,他们俩是怎么实现可重入的

4、线程池的工作原理和7个参数

5、Volatile的用处

6、JVM在什么情况下会发生YoungGC和FullGC

7、Redis的淘汰机制

8、类加载机制说一下

9、快速排序的基本实现

10、Mysql优化是怎么优化的,索引失效的情况都有哪些

11、实现一个抢红包的算法,怎么实现

12、让你实现一个LRU算法,怎么实现

销售易 – 视频面试 30分钟

1、项目说了很多

2、Spring是怎么管理Bean的

3、你们公司用AOP都做了什么

4、AOP的实现原理是什么

5、为什么JDK动态代理要实现接口,CGLIB不用实现

6、CGLIB动态代理的实现方式

7、如果让你实现AOP,你会怎么实现

8、Redis的基本数据类型

9、Redis的hash是怎么实现的

10、Redis的事务是怎么实现的

11、Redis的淘汰机制

12、LRU是怎么实现的

13、HashMap的实现原理

14、HashMap中哪里用到了数组

15、HashMap的扩容机制

16、你能想到别的方法进行数组的扩容吗

17、为什么链表要转换成红黑树

18、链表是怎么转换成红黑树的

19、SpringBoot自动装配的原理

20、AutoConfigurationImportSelector这个类是怎么实现的

21、SpringApplication对象是怎么创建的

22、Spring循环依赖怎么解决的

搜狐一面 – 视频面试 50分钟

1、JVM垃圾回收机制

2、怎么判断当前对象能否被回收

3、对象首次创建的话创建在哪个区(新生代还是老年代,新生代哪个区)

4、解释一下stop the world

5、Stop the world 过程中,如果有新的垃圾产生怎么办

6、我说我们项目用的是JDK1.6,面试官就问,1.8和1.6都有哪些区别

7、有了解过1.8的stream流吗

8、HashMap1.8和1.8之前的区别,以及底层实现

9、HashMap为什么不是线程安全的

10、HashMap还会造成什么问题(1.8之前头插法会导致死循环)

11、实现HashMap线程安全的有哪些(我答了三种)

12、CurrentHashMap的底层原理,以及1.8和之前的区别

13、详细讲讲CAS的工作原理

14、CAS的ABA问题怎么解决的

15、你常用的线程池有哪些

16、线程池的7个参数

17、SingleThreadExecutor和CachedThreadPool为什么不推荐使用,会出现哪些问题

18、写一个冒泡排序

19、写一个算法,快乐数(LeetCode原题),我一开始用递归写,会出现死循环的状态,面试官超好提醒我,然后花了很长时间修改算法,通过

20、Mybatis有了解它的插件吗

21、MybatisTemplate 有了解吗

22、Redis的五个参数

23、Redis的事务,我Muliti事务开始,然后写了五个key,其中有一个失败了,Redis怎么处理的,会回滚吗

24、Redis事务和Mybatis事务有什么区别

25、Redis主从复制了解吗

26、Redis主服务器是怎么给从服务器写入数据的

27、看你还了解Docker,(简单说了一下玩过一点点)

美团(美团地图)一面 – 视频面试 50分钟

1、聊了十多分钟做的项目

2、你们公司自研的Spring和市面上流行的Spring有什么不一样

3、Redis主要用来干嘛的

4、Redis的持久化方式

5、Redis的事务有了解吗(我说了使用的基本命令和mybatis、mysql的区别)

6、你对你们经常使用的集合底层有了解吗

7、HashMap的底层原理,1.8以及之前的,线程安全实现方式

8、Sychonized和ReentrantLock 的区别

9、Volatile的作用是什么

10、对JVM垃圾回收器有了解吗

11、CMS垃圾回收器说一下工作原理

12、堆和栈的区别

13、JVM的调优

14、try{}catch{}finally{}中,如果finally{}中的返回值+1,返回的是多少,会改变返回结果吗

15、线程池有了解吗,它的工作原理

16、固定长度的线程池有什么缺点

17、Mysql和Oracle你用的最大的区别是什么(我说了两者的事务隔离级别,以及mysql中的Explain和oracle当中的Explain plan for的区别)

18、Mysql的聚簇索引和非聚簇索引有了解吗

19、看你做过Sql优化,讲讲你做了哪些优化

20、Mysql回表知道是什么吗

21、SpringMVC的工作流程是什么

22、一道简单的算法题,反转链表,我说这题我前段时间专门leetcode上练过,我算法不好,这段时间主要是复习基础了,面试官夸我基础很扎实,应该二面稳了,面试体检极佳

美团(美团地图)二面 – 视频面试 40分钟

1、是个小姐姐程序员,聊了聊项目

2、问了下我们公司现在项目用到的技术栈

3、和一面一样问了下我们公司自研的Spring有哪些不一样

4、同样讲了讲oracle和mysql的区别

5、讲讲不可重复读是什么

6、Jdk1.8有了解过CompletableFuture吗(我没有了解过,流下来没技术的眼泪)

7、那你知道Future吗(好像是Callable的时候返回值会用到它,又流下了没技术的眼泪)

8、写一个算法题吧,牛客网的 密码合格校验,写了十多分钟,全是靠if else解决的

小姐姐也说,这个写的没问题,但是需要更多的考虑更好的办法,比如借助java自带的工具类等等。

9、说一些和技术无关的,你对你自己的技术发展有什么想法(我就说,平时会多看看技术公众号,看B站学习技术,会关注很多新技术然后跟着学习,想去更大的平台通过实际场景的应用丰富自己的阅历)

美团(美团打车)一面 – 视频面试 40分钟

1、String,StringBuild,StringBuff的区别

2、StringBuff为什么是线程安全的

3、ArrayList和LinkedList的区别是什么

4、以上二位是线程安全的吗,怎么实现线程安全

5、Vector实现线程安全的原理是什么

6、多线程编程中你知道哪些都是保证线程安全的

7、Volatile的底层实现是什么

8、线程池了解吗,说说工作原理

9、内存溢出说一下

10、栈溢出说一下

11、要实现一个OOM和栈溢出,怎么实现

12、说一下你常用的垃圾回收器

13、Stop the world 解释一下

14、CMS的工作流程是什么

15、Spring中bean的作用域

16、Spring中bean的生命周期说一下

17、说一下你在项目中遇到的印象深刻的问题是什么,有什么收货

18、Redis的持久化怎么实现的

19、写一道编程题,leetcode 第一道经典题目–两数之和

20、对美团打车有什么想了解的吗(问了下美团打车和滴滴高德打车的区别)

字节跳动 视频面试 – 30分钟

1、简单介绍了一下项目

2、HashMap介绍一下

3、为什么要用红黑树的结构

4、红黑树一般都会用在哪些场景中

5、Oracle的索引了解吗

6、Mysql的索引底层实现是什么

7、B+树的实现原理了解吗

8、Mysql事务特性了解吗,具体说一说

9、Mysql的事务隔离级别了解吗

10、Mysql的事务隔离级别是怎么实现的

11、算法题:[(5,7),(1,6),(15,50),(60,90),(35,37)] 合并二元数组 输出[(1,7),(15,50),(60,90)]

12、算法题:分层打印二叉树

13、算法题:反转链表起网络

总结

答案在我过往文章都有,大家需要自行查阅哟,需要清晰一点的整理,去我的GitHub就可以了,上面基本上是我所有文章和资料的合集了。
另外,敖丙把自己的面试文章整理成了一本电子书,共 1630页!目录如下

过往文章和资料:https://github.com/AobingJava/JavaFamily
面试资料回复【资料】即可 或者百度云直接下载
面试资料链接:http://pan.baidu.com/s/1i3vmGfV 密码:moy8

希望大家都能找到心仪的工作,都有跟开头读者一样跟我分享喜悦的一天,如果你觉得坚持不下去的时候,想想你进去之后能拿到的薪资待遇,我想你会坚持住的,还是那句话,不是一番梅彻骨,怎得梅花扑鼻香。

我是敖丙,你知道的越多,你不知道的越多,我们下期见!

人才们的 【三连】 就是敖丙创作的最大动力,如果本篇博客有任何错误和建议,欢迎人才们留言!


文章持续更新,可以微信搜索「 三太子敖丙 」第一时间阅读,回复【资料】有我准备的一线大厂面试资料和简历模板,本文 GitHub https://github.com/JavaFamily 已经收录,有大厂面试完整考点,欢迎Star。


转载:https://blog.csdn.net/qq_35190492/article/details/107532905
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场