写在前面

又到了收割Offer的季节,你准备好了吗?曾经的我,横扫各个大厂的Offer。还是那句话:进大厂临时抱佛脚是肯定不行的,一定要注重平时的总结和积累,多思考,多积累,多总结,多复盘,将工作经历真正转化为自己的工作经验。

今天,我就跟小伙伴们分享一些经典的大数据面试题,跟我一起横扫各个大厂的Offer!后续,我会给大家输出一篇我平时是如何在工作过程中总结经验的,希望能够给小伙伴们带来实质性的帮助。不多说了,开始今天的主题——面经分享。

面经分享

今天给大家分享一个面试大厂的完整面经,小伙伴们可以对照下,这些面试题自己是否都会了呢?欢迎文末留言说出你的答案!如果你想提升自己的技术,或者对自己的发展比较迷茫,都可以在文末说出你感受!

一轮技术面(90分钟)

1.hashmap和hashtable区别

2.为什么产生死锁

3.jvm类加载

4.java反射获取私有属性,改变值

5.反射用途

6.所用数据库

7.项目难点,问题

8.如何解决项目中遇到的问题

9.项目中遇到最自豪的地方

10.会什么算法

二轮技术面(120分钟)

1.讲项目

2.数据库乐观锁使用

3.状态机

4.如何解决状态机不对问题

5.如何分库分表

6.MySQL极限

7.HashMap源码

8.设计一个线程安全的HashMap

9.快排的实现,时间复杂度和空间复杂度

10.会什么算法

11.如何把项目变成SOA架构

12.Spring源码,最深刻的模块,aop用途

13.JVM内存模型

14.垃圾回收机制

15.项目中查看垃圾回收

三轮技术面(150分钟)

1.ConcurrentHashMap底层原理?

2.手写一个LRU(用LinkedHashMap)

3.HashMap底层数据结构?

4.JDK1.8中的HashMap为什么用红黑树不用普通的AVL树?

5.为什么在8的时候链表变成树?

6.为什么在6的时候从树退回链表?

7.线程池7个参数,该怎么配置最好?

8.说一下volatile

9.volatile的可见性和禁止指令重排序怎么实现的?

10.CAS是什么?PriorityQueue底层是什么,初始容量是多少,扩容方式呢?

11.若原始大小<64,则扩容为原来的2倍+2,不然就扩容为原来的1.5倍

12.HashMap的容量为什么要设置为2的次幂?

13.你知道跳表吗,什么场景会用到?

14.CopyOnWriteArrayList知道吗,迭代器支持fail-fast吗?

15.innodb的底层数据结构?

16.为什么用B+树不用B树?

17.为什么用B+树不用红黑树?

18.coding:无序数组怎么寻找第k大的数,写一个二叉树层次遍历

19.不知道大小的数据流取其中100个数,怎样的取法能最随机

20.n个物品每个物品都有一定价值,分给2个人,怎么分两个人的价值差最小

四轮技术面(120分钟)

1.项目中的权限管理

2.登录状态如何储存

3.session和cookie的区别,session如何管理

4.HashMap底层结构

5.synchronized关键字的用法

6.synchronized修饰类方法和普通方法的锁区别,获取类锁之后还能获取对象锁吗

7.类加载器的双亲委派模型的作用,能重复加载某个类吗

8.类加载器的类的缓存,key是什么

9.介绍Redis

10.如何将数据分布在不同的Redis

11.有了解过取余算法?

12.spring的apo实现

13.字节码结构

14.浏览器输入网址过程,结合springmvc

五轮技术面(120分钟)

1.HashMap在大量哈希冲突该怎么处理

2.红黑树比BST优点

3.MySQL为什么使用B+树

4.多个索引会有多份数据吗

5.数据库的隔离级别和解决的问题

6.数据库默认隔离级别,一定会产生幻读吗,怎么解决

7.输入网址到展示的整个过程,结合springmvc来讲

8.负载均衡的算法

9.哈弗曼编码,如何解决译码问题

10.实习会对工作有影响吗

11.用英文介绍一个项目

12.如何查看系统负载

13.描述一个解决问题的过程

14.如何把文件从服务器复制到本地,用什么命令

六轮技术面(90分钟)

1.讲讲你所了解的JVM垃圾收集算法

2.项目中用的哪些技术

3.项目如何设计流程流转,如果是你的话该怎么设计

4.MySQL使用的索引结构,查找效率

5.MySQL查询优化

6.MySQL慢查询开启,语句分析

7.HashMap查找效率

8.JVM内存模型

9.设计模式,策略模式的使用场景

10.如何确保单例线程安全

11.Spring的bean的默认范围

12.对Netty的了解

13.未来发展规划

七轮HR面(40分钟)

1.说一下发展方向

2.说一下经验不足导致的问题

3.说一下挑战杯的工作内容

4.说一下你给挑战杯项目的主要贡献

5.实习时间

6.拿到了哪些offer,你是怎么考虑的

7.为什么不选择腾讯

8.腾讯技术栈和阿里技术栈的区别

好了,今天就到这儿吧,我是冰河,大家有啥问题可以在下方留言,也可以加我微信:sun_shine_lyz,我拉你进群,一起交流技术,一起进阶,一起牛逼~~

同时拿到BATJMD的Offer是怎样的一种体验?的更多相关文章

  1. 【剑指offer】递归循环两种方式反转链表

    转载请注明出处:http://blog.csdn.net/ns_code/article/details/25737023 本文分别用非递归和递归两种方式实现了链表的反转,在九度OJ上AC. 题目描写 ...

  2. 鹅场offer已Get,下周签约,终于能静下心来总结总结

    2015年9月20号下午,接到腾讯总部的电话,确定了offer相关信息,算是正式get了鹅场的offer,坐等下个周一周二的签约会. 心路篇 2015年2月:已经2月份了,自己在大学的时光已经来到了比 ...

  3. 干货 | 剑指offer系列文章汇总

    下面是名企面试中经常会出现的面试题目,大家可以戳相应的题目查看题目细节,其答案会在紧接着的后一篇中出现  剑指offer系列  始 剑指offer—灯管问题(1)  剑指offer—10人电梯(2)  ...

  4. Effective Scala

    Effective Scala Marius Eriksen, Twitter Inc.marius@twitter.com (@marius)[translated by hongjiang(@ho ...

  5. 剑指offer-面试题10:二进制中1的个数

    题目:请实现一个函数,输入一个函数,输出该数二进制表示中1的个数.例如把9 表示成二进制是1001,有2位是1.因此如果输入9,该函数输出2. 这道题最典型的方法就是用移位统计,就比如统计9的二进制1 ...

  6. 剑指offer-面试题4.替换空格

    题目:请实现一个函数,把字符串中的每个空格都替换成"%20".例如输入"We are happy." 则输出"We%20are%20happy.&qu ...

  7. 快速排序原理、复杂度分析及C语言实现

    本文作者华科小涛:@http://www.cnblogs.com/hust-ghtao/,参考<算法导论>,代码借用<剑指offer> 快速排序是一种最坏情况时间复杂度为的排序 ...

  8. 如何评价 GitHub 发布的文本编辑器 Atom?

    这里是HN上的讨论:GitHub's new text editor leaked on Twitter这里是github page:Atom · GitHub 好多repo啊我不知道有没有知友了解更 ...

  9. 面试题40:最小(大)的K个数

    剑指offer40题,同时这也是面试高发题目 2019.4 蚂蚁金服问道:求1000万个数据中的前K个数. 思路: 1.直接上排序算法,然后我们就取排好顺序的前K个即可.但是单考虑快排,时间复杂度也要 ...

随机推荐

  1. 【栈和队列】2、栈的基本实现 - Java

    简单记录 - bobo老师的玩转算法系列–玩转数据结构 - 栈和队列 栈的实现 Stack<E> void push(E) E pop() E peek() int getSize() b ...

  2. 【Linux】CentOS7中修改中文字符集

    CentOS 7中字符集查看的方式是 locale -a   或者locale 如果想显示中文的话,应该修改为 LANG="zh_CN.UTF-8" 在命令行界面临时修改字符集的话 ...

  3. SAP ERP中权限参数和角色相关表

    SAP版本:S/4 HANA 1809

  4. Lakehouse: 统一数据仓库和高级分析的新一代开放平台

    1. 摘要 数仓架构在未来一段时间内会逐渐消亡,会被一种新的Lakehouse架构取代,该架构主要有如下特性 基于开放的数据格式,如Parquet: 机器学习和数据科学将被作为头等公民支持: 提供卓越 ...

  5. JWT令牌简介及demo

    一.访问令牌的类型 二.JWT令牌 1.什么是JWT令牌 ​ JWT是JSON Web Token的缩写,即JSON Web令牌,是一种自包含令牌. JWT的使用场景: 一种情况是webapi,类似之 ...

  6. 解决Linux下mysql区分大小写的问题

    1.查看lower_case_table_names的值,0代表区分大小写,1代表不区分大小写. 通过命令:SHOW VARIABLES LIKE 'lower%'; 1. 解决方法 以root用户登 ...

  7. Qt QMenuBar和QMenu以及QAction巧妙的使用方法

    这里简单介绍QMenuBar和QMenu以及QAction是什么,其详细功能本文不做介绍,如果还不了解的朋友可以查阅Qt的帮助手册或浏览其它相关博客.如下图,软件中蓝色条框是QMenuBar用来承载Q ...

  8. 手淘架构组最新实践 | iOS基于静态库插桩的⼆进制重排启动优化 抖音研发实践:基于二进制文件重排的解决方案 APP启动速度提升超15% 编译期插桩

    抖音研发实践:基于二进制文件重排的解决方案 APP启动速度提升超15% 原创 Leo 字节跳动技术团队 2019-08-09 https://mp.weixin.qq.com/s/Drmmx5JtjG ...

  9. (009)每日SQL学习:Oracle各个键说明(转)

    原文地址:http://www.agiledata.org/essays/keys.html 本文概述关系数据库中为表指定主键的策略.主要关注于何时使用自然键或者代理键的问题.有些人会告诉你应该总是使 ...

  10. slice 切片实现 Slice object interface

    1.Python切片对象可以为任意类型 https://github.com/python/cpython/blob/master/Include/sliceobject.h /* Slice obj ...