太out了,字节跳动、美团java后端社招题:多线程+分布式+算法+数据库+JVM,你都不知道?

3 篇文章 0 订阅
2 篇文章 0 订阅

写在前面:

字节跳动是近几年发展特别迅速的互联网公司,凭借短视频平台【抖音】和自由创作平台【今日头条】等一系列以内容创造价值的应用异军突起,已经成为动摇BAT地位的一大狠角色。

同时,字节跳动公司也是出了名的出手阔绰,在校招生薪酬上的投入不菲,是互联网行业高薪资、高福利的代表。因此,字节跳动也成为广大应届生心中必须争取的大厂之一。

这次字节跳动的面试,给我的感触很深,意识到基础的重要性,这次字节共4面技术面+HR面,特分享一下这次的4面技术面真题,可能有些记不全了,但多少也能够给一些正在面试字节或计划面试字节的朋友提供帮助。

字节跳动、美团java后端社招题:多线程+分布式+算法+数据库+JVM

字节跳动一面

  • java gc
  • JVM的内存结构,Eden和Survivor比例
  • java hashmap、 为什么用红黑树、红黑树邻接点为啥是8 。
  • 拜占庭问题
  • 一致性哈希
  • 如何控制负载均衡。
  • http码 302 403 。
  • https 加密过程。
  • 操作系统虚存实现原理,交换,覆盖区别。
  • paxos算法。
  • g1和cms区别,吞吐量优先和响应优先的垃圾收集器选择。
  • 缓冲区满异常是什么原因。
  • HTTP的长连接是什么意思。
  • 堆排序的时间复杂度、空间复杂度、排序的的过程。
  • MySQL里有2000w数据,redis中只存20w的数据,如何保证redis中的数据都是热点数据
  • 算法 : 对一个八位数有三种操作: 加一、减一、反转 。 至少多少次操作可以把一个八位数A变成八位数B。

字节一面后,我觉得自己凉凉了,算法也不会,题目也有些不会。但还是给了二面

字节跳动二面

  • 算法题: 合并区间 快排
  • 如何在 Spring Boot 中禁用 Actuator 端点安全性
  • BeanFactory 和 ApplicationContext 有什么区别?
  • 如何让 Java 的线程彼此同步?你了解过哪些同步器?请分别介绍下。
  • HashMap结构,是否线程安全?ConcurrentHashMap如何保证线程安全?
  • 之前用过哪些设计模式?
  • 用java自己实现一个LRU。
  • 串行(serial)收集器和吞吐量(throughput)收集器的区别是什么?
  • TCP 粘包/拆包的原因及解决方法?
  • 多线程的几种实现方式,什么是线程安全
  • 非常多个线程(可能是不同机器),相互之间需要等待协调,才能完成某种工作,问怎么设计这种协调方案。

好吧,二面算法写个快排, 居然死循环了,调了10分钟没调出来, 真心感觉凉了,但是没想到居然给了三面, 我真是佛了。。

字节跳动三面

  • 输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。
  • 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
  • 写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。
  • 要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。n<=39
  • 题目(盛大无线面试题):在一个字符串数组中有红、黄、蓝三种颜色的球,且个数不相等、顺序不一致,请为该数组排序,使得排序后
  • 写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度。
  • 字符串排序。
  • 求一个3*3矩阵对角线元素之和
  • 2亿个随机生成的无序整数,找出中间大小的值
  • 有1亿个数字,其中有2个是重复的,快速找到它,时间和空间要最优
  • 10亿个数字里里面找最小的10个

字节三面全是算法,被面试官问懵了....

字节跳动四面

  • Spring AOP的实现原理。
  • Spring怎么配置事务(具体说出一些关键的xml 元素)。
  • 说说你对Spring的理解,非单例注入的原理?它的生命周期?循环注入的原理,aop的实现原理,说说aop中的几个术语,它们是怎么相互工作的。
  • MVC模式,即常见的MVC框架。
  • Redis的并发竞争问题如何解决,了解Redis事务的CAS操作吗。
  • 如何看待缓存的使用(本地缓存,集中式缓存),简述本地缓存和集中式缓存和优缺点。
  • 说说你知道的几种HASH算法,简单的也可以
  • Mybatis的底层实现原理。
  • 如何做限流策略,令牌桶和漏斗算法的使用场景。
  • 高并发下,如何做到安全的修改同一行数据。

HR面

  • 请介绍一下你自己
  • 为啥离职?
  • 今后的职业规划?
  • 期望薪资
  • 你还有什么问题问我吗?

整个面试下来,觉得面试也有运气成分,但是更多是实力体现,我们不要抱着侥幸的心理,把基础打杂事,注意说话的方法,一定洋溢着自信。注意一点是当面试官问你你有什么想问他的不,把握好机会,也会可以逆转局势。

字节跳动、美团java后端社招题:多线程+分布式+算法+数据库+JVM

美团一面

  • 简单说说你了解的类加载器,可以打破双亲委派么,怎么打破。
  • sychronized 和 reentrantlock 实现原理
  • volatile原理
  • java 设计模式, jdk里用到了哪些设计模式。
  • NIO 讲一讲。
  • 数据库 两种引擎区别。
  • 垃圾回收算法的实现原理。
  • 四次挥手 越详细越好
  • 当出现了内存溢出,你怎么排错。
  • concurrenthashmap 实现原理。
  • 二叉树 转 链表。
  • netty的fashwheeltimer的用法,实现原理,是否出现过调用不够准时,怎么解决。
  • MYSQL的主从延迟怎么解决。

字节跳动、美团java后端社招题:多线程+分布式+算法+数据库+JVM

美团二面

  • gc
  • java longadder
  • 多线程如果线程挂住了怎么办。
  • 数据库的索引数据结构 :哈希 、b 树、全文索引。
  • 跳台阶
  • 如果让你实现一个并发安全的链表,你会怎么做
  • 设计一个秒杀系统,30分钟没付款就自动关闭交易
  • 如何实现负载均衡,有哪些算法可以实现。
  • 描述一个服务从发布到被消费的详细过程。
  • Redis的并发竞争问题如何解决,了解Redis事务的CAS操作吗
  • tomcat如何调优,涉及哪些参数。

美团三面

  • fanal fanally fanalize 区别、
  • JVM内存模型的相关知识了解多少,比如重排序,内存屏障,happen-before,主内存,工作内存等。
  • 不用final还可以用什么办法使得这个类不被继承、
  • java初始化的顺序 :
  • java锁机制、sychronnized 和 lock的区别
  • 如何设计一个分布式登录系统?
  • 自旋锁 怎么才能公平。
  • 客户抱怨你们网站太慢,怎么排查问题?
  • 导致线程死锁的原因?怎么解除线程死锁
  • spring的controller是单例还是多例,怎么保证并发的安全
  • 描述一个服务从发布到被消费的详细过程。

HR面

  • 请介绍一下你自己
  • 你为什么离开原来的公司?
  • 如果公司录用你,你将怎样开展工作?
  • 你为什么愿意到我们公司来工作?
  • 你对加班的看法
  • 你还有什么问题问我吗?

很幸运还是给我过了,二面面试官我觉得面得很专业,基本都是从浅入深的考察知识的深度,我感觉答得还可以

以上就是字节跳动/美团后端研发面试题

既然是要面试,那么就少不了刷题,我自己是刷了不少面试题的,所以在面试过程中才能够做到心中有数,基本上会清楚面试过程中会问到哪些知识点,高频题又有哪些,所以刷题是面试前期准备过程中非常重要的一点。

以下是我私藏的面试题库:

字节跳动、美团java后端社招题:多线程+分布式+算法+数据库+JVM

 

字节跳动、美团java后端社招题:多线程+分布式+算法+数据库+JVM

互联网大厂面试宝典

字节跳动、美团java后端社招题:多线程+分布式+算法+数据库+JVM

字节跳动、美团java后端社招题:多线程+分布式+算法+数据库+JVM

 

  • Spring全家桶(实战系列)

字节跳动、美团java后端社招题:多线程+分布式+算法+数据库+JVM

 

  • 算法(实战文档)

字节跳动、美团java后端社招题:多线程+分布式+算法+数据库+JVM

 

写在最后

很多人感叹“学习无用”,实际上之所以产生无用论,是因为自己想要的与自己所学的匹配不上,这也就意味着自己学得远远不够。无论是学习还是工作,都应该有主动性,所以如果拥有大厂梦,那么就要自己努力去实现它。

以上学习资料均免费放送,最后祝愿各位身体健康,顺利拿到心仪的offer!

字节跳动、美团java后端社招题:多线程+分布式+算法+数据库+JVM

阿里巴巴内部PPT全集及电子文档分享

字节跳动、美团java后端社招题:多线程+分布式+算法+数据库+JVM

Java核心知识点整理

字节跳动、美团java后端社招题:多线程+分布式+算法+数据库+JVM

1000道互联网Java工程师面试题

字节跳动、美团java后端社招题:多线程+分布式+算法+数据库+JVM

祝小伙伴都可以拿到自己心仪大厂的offer~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值