秋招 之后,分享面试阿里、头条、腾讯的经过以及一些总结

  1. dubbo 中的 rpc 如何实现。

  2. 自己实现 rpc 应该怎么做

  3. dubbo 的服务注册与发现。

  4. 听说我是非科班,于是问了些排序算法

耗时将近 30 分钟。

三面:

三面不是面试,而是笔试,耗时三个小时,考的是 Java 核心的基础。但是好像不能透题,就不说了。都挺有难度的。

大概说一下就是有几个考点,Java 并发的知识点,集合类,线程池,多线程之间的通信等。

HR 面:

聊人生谈理想,HR 小姐姐非常温柔,交流十分愉快。30 分钟。

五面腾讯


面试岗位是后台开发工程师,我没有选择意向事业群。

SNG 的部门捞了我的简历,开始了面试,他们的技术栈主要是 Java,所以比较有的聊一共经历了四次技术面试和一次 HR 面试,拿到 offer。

一面:

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

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

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

  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 分割文件处理。

二面:

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

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

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

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

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

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

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

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

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

  10. Redis 的持久化方式

  11. 秒杀系统的架构设计

三面:

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

  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 面:

自我介绍

实习收获

台湾交流体验

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

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

你的优缺点,如何改进

学生时代最成功的事

你的预期薪资

三面头条


面试岗位是后台研发工程师,地点选择了上海,通过大佬内推,跳过死亡笔试,直接视频面,从 3 点开始,断断续续到晚上 8 点结束。

一共三轮技术面试,每一轮都要写代码,问问题的风格有点像腾讯,也喜欢问一些底层知识,让我有点懵逼。

一面:

  1. 写一个题,找一个无序数组的中位数

  2. 写了个快排,然后让我找到无序数组第 k 大的一个数,我说先排序再找,实际上可以用快排的 partition 函数。

  3. 快排的时间复杂度,最坏情况呢,最好情况呢,堆排序的时间复杂度呢,建堆的复杂度是多少,nlgn。

  4. 操作系统了解么,Linux 和 windows

  5. 说说 Linux 的磁盘管理,一脸懵逼

  6. Linux 有哪些进程通信方式,五大件

  7. Linux 的共享内存如何实现,大概说了一下。

  8. 共享内存实现的具体步骤,我说没用过

  9. socket 网络编程,说一下 TCP 的三次握手和四次挥手,中间网络不好,面试官都没听清楚,很尴尬

  10. 跳过网络,问了项目的一些东西

  11. 问我如何把 docker 讲的很清楚,我从物理机,虚拟机到容器具体实现稍微说了下。

  12. 问我 cgroup 在 linux 的具体实现,不会。

  13. 多线程用过哪些,chm 和 countdownlatch 在实习用过

二面:

  1. 自我介绍

  2. Java 的集合类哪些是线程安全

总结

面试建议是,一定要自信,敢于表达,面试的时候我们对知识的掌握有时候很难面面俱到,把自己的思路说出来,而不是直接告诉面试官自己不懂,这也是可以加分的。

以上就是蚂蚁技术四面和HR面试题目,以下最新总结的最全,范围包含最全MySQL、Spring、Redis、JVM等最全面试题和答案,仅用于参考

一份还热乎的蚂蚁金服面经(已拿Offer)面试流程4轮技术面+1轮HR

讲的很清楚,我从物理机,虚拟机到容器具体实现稍微说了下。

  1. 问我 cgroup 在 linux 的具体实现,不会。

  2. 多线程用过哪些,chm 和 countdownlatch 在实习用过

二面:

  1. 自我介绍

  2. Java 的集合类哪些是线程安全

总结

面试建议是,一定要自信,敢于表达,面试的时候我们对知识的掌握有时候很难面面俱到,把自己的思路说出来,而不是直接告诉面试官自己不懂,这也是可以加分的。

以上就是蚂蚁技术四面和HR面试题目,以下最新总结的最全,范围包含最全MySQL、Spring、Redis、JVM等最全面试题和答案,仅用于参考

[外链图片转存中…(img-8T35LtI9-1720123305340)]

  • 18
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值