蚂蚁数金java开发一面面经

电话面,通过邮箱发了个链接,先打了个题,然后再问一些问题。

1.算法

题目:求两个集合的交集

先写了个nLogn,然后面试官要求On,在提示下写出来了。

最后问会不会用Stream API。

2.面试

(1)int 和 Integer的区别

(2)装箱拆箱是一个编译时的过程还是运行时的过程。

(3)Integer的值缓存了解吗?

(4)String不可变了解过?

(5)为什么要设计成不可变的类型。

(6)有没有一些机制(其他的javaAPI)可以操作String让他变成可变的

(7)set的底层结构是用什么实现的。

(8)Hash表的访问效率为什么是O(1)

(9)Hash表有没有可能时间复杂度变成O(n)的场景。

(10)项目有什么难点

(11)秒杀系统超卖怎么解决的

(12)用Redis的什么结构存对象的

(13)Redis怎么实现原子性的

(14)单线程的情况下为什么要加锁(因为之前答了lua脚本有个类似加锁的操作)

(15)redis为什么单线程但是IO性能较高。

(16)了解过其他IO模型

(17)几种IO模型在linux系统在核的层面有什么区别?

(18)比较擅长的地方

(19)MySQL隔离机制,脏读出现在哪

(20)为什么隔离级别越高,效率越低

(21)有了解过新技术吗?

(22)未来的工作是想偏算法还是偏工程?

#面经##实习##蚂蚁集团##阿里巴巴##java工程师#
全部评论
很好奇第14个问题,redis在单线程下为什么要加锁呢?楼主是在lua脚本的情况下加了锁?好像确实没必要呀,这是为了解决什么问题呢?
点赞 回复 分享
发布于 2022-09-08 14:29 广东
请问楼主,如果面Java岗,面试的时候算法题能用c++写吗?会不会让面试官觉的java基础不扎实啊?但平常学数据结构啊算法啥的都是用的c++.....
点赞 回复 分享
发布于 2022-04-26 17:09

相关推荐

04-17 10:16
门头沟学院 Java
小浪_coder:24届很难找了,马上25的都毕业了还有很多没找到的
点赞 评论 收藏
分享
评论
点赞
20
分享

创作者周榜

更多
牛客网
牛客企业服务