字节跳动日常实习面经——Java后端

字节跳动技术中台日常实习生——后端研发

base:武汉
总共4次面试,3次技术+1次HR,在第3面,我跪了。。。。

一面

自我介绍

final、finalize()的区别,简单说说吧

static 关键字的用处和注意点是?

String类为何是final修饰的?说说它的底层数据结构吧

String、StringBuilder、StringBuffer有了解嘛?说说你对他们的理解

transient有什么作用?

红黑树的数据结构,左旋和右旋是怎样实现的?

HashMap一定用过吧?给我讲讲它的底层数据结构吧?HashTable与HashMap的区别是?

HashMap的扩容机制、详细说说put元素的过程吧

  • Node的数据结构是?
  • 寻址算法是?
  • hashcode是对象原来的值吗?
  • 为何散列表的长度是2的次方数?它的底层算法是怎样的?给我手写一下吧。
  • 扩容的时候,Map中的元素是怎样分配到新的散列表中的?(面试官提示:红黑树中还维护着链表)

HashMap的负载因子为何默认为0.75?

什么是JVM?

JVM的运行时数据是怎样的?

什么是JVM的堆内存?

JVM的垃圾回收算法,讲讲你了解的垃圾回收器吧

有了解G1吗?

看你的项目中用了MySQL,说说MySQL的底层索引是什么数据结构吧?

在你的项目中,使用数据库的存储过程编程,有一定性能提升,能解释下为什么吗?

MySQL的隔离级别

什么是数据库事务?谈谈你对它的理解

MySQL的默认存储引擎是?

MySQL中存储引擎InnoDB和MyISAM的区别

进程和线程,说说理解

CPU如何进行进程间的通信的?

线程的生命周期

什么是线程的上下文切换?

sleep()和wait()的区别

synchronized 和 volatile 有了解吗?

synchronized 是重量级锁吗?

  • 锁升级详细说说吧
  • 那操作系统是如何实现临界区资源访问的同步的?
  • CAS原理是啥?

volatile 原理和作用

做2个题吧

  1. 翻转二叉树
  2. 顺时针打印数组

二面

自我介绍

看你这个项目中,用到过MySQL,说说什么是“聚簇索引”吧

你在这个开发小组中担任组长,那说说你在开发中遇到的问题

项目可以演示吗?

  • 一些关于项目的问题,都挺简单(比如为何选择Spring Boot作为开发框架等)

我再看看你的简历吧

JVM中的堆内存是什么?

JVM的垃圾回收算法和常见的垃圾回收器你知道哪些?

  • Serial
  • ParNew
  • Parallel Scavenge
  • CMS
  • G1
  • ZGC

三种垃圾回收算法的区别

强、软、弱、虚引用了解吗?

JVM的类加载机制是?

对象的访问定位有几种方式?

双亲委派模式知道吗?

ArrayList、LinkedList和Vector的异同以及底层数据结构是?

== 与 equals

序列化如何实现?为啥要实现序列化?

什么是JDBC?

int 和 Integer的关系?什么情况下Integer会创建一个新的对象?

反射有了解吗?说说看

死锁是?

线程的sleep()和yield()的区别

synchronized 的用法以及锁优化

什么是Huffman树?主要用途是?什么情况下压缩效率高?

B树和B+树有了解吗?

做2个题吧

  • 给定一个非空字符串 s 和一个包含非空单词的列表 wordDict,判定 s 是否可以被空格拆分为一个或多个在字典中出现的单词。

  • 二叉树展开为链表

三面

没有自我介绍

说说MySQL的索引吧

数据库事务的4大特性

MySQL的InnoDB和MyISAM的锁机制异同,谈谈

数据库SQL语句编写(一个题)

什么是读写分离?

JVM 的堆内存结构是?

详细介绍一下Java虚拟机栈

JVM 垃圾收集器有哪些?

CMS的执行过程是?

STW(STOP THE WORLD)是什么?是如何实现的(两种方式)?

对象的内存分配机制是?

了解过类加载器吗?

TreeMap了解吗?它的底层数据结构是?

平衡二叉树

B树、B+树、B*树有了解吧?简单说说你对他们的理解

什么是线程安全?

举例说明volatile的作用

  • DCL

ThreadLocal有了解吗?

做题吧

  • 搜索旋转排序数组
  • 正则表达式匹配

  • 给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。

  • 6
    点赞
  • 55
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值