美文网首页《吊打面试官》系列
930页!熬夜整理了一份包含算法+数据结构+计算机基础+计算机基

930页!熬夜整理了一份包含算法+数据结构+计算机基础+计算机基

作者: 敖丙Kirk | 来源:发表于2020-07-23 11:35 被阅读0次

    前言

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

    image image image image image image image

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

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

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

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

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

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

    image

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

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

    大厂面试题

    域起网络 ----- 一家游戏公司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页!目录如下

    image image

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

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

    image

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

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


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

    相关文章

      网友评论

        本文标题:930页!熬夜整理了一份包含算法+数据结构+计算机基础+计算机基

        本文链接:https://www.haomeiwen.com/subject/xtwclktx.html