刚从大厂面试回来,分享我的 java 后端面试经历(腾讯五面)

大厂

面试职位:java 后端开发工程师。

在大厂的面试前三面真的有点急促,一周内就面完了三次面试,接着就开始无尽的等待,整整等了三周左右,终于完成了四面和 HR 面。整个过程还是比较曲折的,技术面试的难度也挺大的,不过他们部门也是 Java 线,所以还比较有的聊。现在已拿到 offer。

下面我总结的遇到的四面技术面试题和 hr 面。

一面:

1 有序数组排序,二分,复杂度

2 常见排序算法,说下快排过程,时间复杂度

3 有 N 个节点的满二叉树的高度。1+logN

4 朋友之间的点对点关系用图维护,怎么判断两人是否是朋友,并查集,时间复杂度,过程。没讲清楚

1. 初始化元素

2. 实现元素与元素间的联合操作

3. 实现查找元素所在树的根节点

4. 解决一个问题,判定两个元素是否在同一棵树上(两个元素是否相互连接)

5 单元点最短路的方法,时间复杂度

6 如何实现关键字输入提示,使用字典树,复杂度多少,有没有其他方案,答哈希,如果是中文呢,分词后建立字典树?

7 hashmap 的实现讲一下吧,讲的很详细了。讲一下红黑树的结构,查询性能等。

8 Java 中的垃圾回收讲一下,讲了分代,gc 算法,gc root 可达性分析等

9 讲一下两个项目你都做了什么把。

10 除了代码之外你还学习了什么技术,框架。

11 死锁是怎么产生的

12 线程和进程的区别

13 进程的通信方式

14 CPU 的执行方式

15 代码中遇到进程阻塞,进程僵死,内存泄漏等情况怎么排查。通过 ps 查询状态,分析 dump 文件等方式排查。

16 Linux 了解么,查看进程状态 ps,查看 cpu 状态 top。查看占用端口的进程号 netstat grep

17 10g 文件,只有 2g 内存,怎么查找文件中指定的字符串出现位置。MapReduce 分割文件处理。

他说可以用 cat | grep 管道处理。

二面:

1 快排的时间复杂度,冒泡时间复杂度,快排是否稳定,快排的过程

2 100w 个数,怎么找到前 1000 个最大的,堆排序,怎么构造,怎么调整,时间复杂度。

3 一个矩阵,从左上角到右下角,每个位置有一个权值。可以上下左右走,到达右下角的路径权值最小怎么走。

先说了一下 dfs 递归实现。面试官说要优化。

说了一下用迪杰斯特拉的思路,说可以。

4 四辆小车,每辆车加满油可以走一公里,问怎么能让一辆小车走最远。说了好几种方案,面试官引导我优化了一下,但是还是不满意,最后他说跳过。

5 hashmap 的实现,hashtable,concurrenthashmap 实现。

6 MySQL 的索引,B+树性质。

7 Linux 的 cpu 100 怎么排查,top jstack,日志,gui 工具

8 Linux 大文件怎么查某一行的内容。

9 Redis 内存数据库的内存指的是共享内存么

10 Redis 的持久化方式

11 秒杀系统的架构设计

三面:

1 十亿个数的集合和 10w 个数的集合,如何求它们的交集。

集合的数字不重复。

我讲了两次循环,两次 hash,以及排序或者合并等方式。。都不对。后来面试官说是对小数组做 hash,然后遍历大数组即可。我完全想错方向了。

2 十亿和数找到前 100 个最大的,堆排序,怎么实现,怎么调整。

3 TCP 和 UDP 的区别,具体使用场景呢。

4 TCP 四次挥手讲一下过程,最后一次 ack 如果客户端没收到怎么办。

5 对于 socket 编程,accept 方法是干什么的,在三次握手中属于第几次,可以猜一下,为什么这么觉得。

6 Linux 操作系统了解么,了解一点点,就没问了。

7 对于单例模式,有什么使用场景了,讲了全局 id 生成器,他问我分布式 id 生成器怎么实现,说了 zk,问我 zk 了解原理不,讲了 zab,然后就没问啦。

8 除了单例模式,知道适配器模式怎么实现么,有什么用

9 回到网络,刚才你说到直播场景,知道直播的架构怎么设计么,要点是什么,说了几个不太对,他说要避免广播风暴,答不会。

10 Redis 和 MySQL 有什么区别,用于什么场景。

11 问了一下最近看什么书,什么时候开始写博客的

12 问了还有几轮面试,他说这轮我可以过,有点小惊喜

四面:

三面过了半个多月,终于安排四面了。

1 自我介绍

2 项目,收获

3 Linux 了解哪些,基础命令和知识。问我 proc 文件系统了解么,答不了解。

4 TCP 和 UDP 的核心区别在哪,讲了滑动窗口保证可靠有序传输,UDP 不可靠。TCP 需要连接而 UDP 不需要。

5 TCP 的四次挥手,time wait 状态有什么意义。

6 说完这个他问我有什么想问他的了。

7 我问他为什么隔了这么久才面试,而且之前三面都只是初试,然后他说最近他在休假,所以就。。。害我担心了好久。他说接下来等 HR 面就行了。

HR 面:

1 自我介绍

2 实习收获

3 台湾交流体验

4 之前实习公司的情况,拿到 offer 了吗,会如何选择呢

5 排一下公司,部门,薪资和城市等因素。

6 你的优缺点,如何改进

7 学生时代最成功的事

8 你的预期薪资

小伙伴们有兴趣想了解更多相关学习资料请点赞收藏+评论转发+关注我之后
私信我,注意回复回复【000】即可获取更多免费资料!

 

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

倾听铃的声

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值