快手一面凉

1、HashMap为什么不是线程安全的?为什么不是?
            追:什么情况下会导致并发修改异常?
                假如有成千上百万条数据,内存空间无限大,怎么快速的往HashMap中插入数据?
2、自己实现一个java.lang.String行不行?
            追:那重写ClassLoader呢?
3、select a from table where b = ? and (c = ? or d =?)怎么建立索引?
4、你执行sql它会立马告诉你sql资源被占用或者死锁,它这种是怎么探测的?
5、zookeeper满足CAP中的哪两个?答:CP 问:它能保证一致性吗?
                过半选举中主机宕机了,数据会丢吗?
6、Redis的CAP模型满足哪两个?为什么?
全部评论
说说自己拙见都是基于jdk1.8版本 1.HashMap没有应付线程安全的机制 1.2 多线程情况下导致并发修改:具体以下这样put的过程会导致数据覆盖,resize中可能触发树化会导致死锁 1.3 假如很多数据快速插入:1.我们一开始就给HashMap设置size 1.3 如果允许使用多线程可以利用ConcurrentMap也是设置size 1.4 如果key明确知道某一个类似例如int 可以考虑使用Netty里面的intObjectMap
18 回复 分享
发布于 2023-08-15 13:50 广东
好难感觉
11 回复 分享
发布于 2023-08-14 16:18 陕西
2.String是final类,不行。实现ClassLoader接口,属于应用程序类加载器,用于加载指定路径下的类,但不能用于加载String(k可以用双亲委派说明这点)
4 回复 分享
发布于 2023-08-15 13:52 广东
你这面试题和我之前面试快手的基本上一样,可以看我之前发的
3 回复 分享
发布于 2023-08-17 22:53 江苏
woc,好难啊,我直接寄掉
3 回复 分享
发布于 2023-08-28 12:22 四川
4.维持一个图数据结构,一个事务代表一个节点,如果事务A等待事务B持有的资源,就会在等待图中添加一条从A指向B的边。循环检测图是否含有环(死锁)
2 回复 分享
发布于 2023-08-15 13:57 广东
第三题就是建立一个b索引吗,因为c,d 用不到,所以用不到索引覆盖,a直接排除,就算建立(b.c.d)联合索引,也只是走b索引,c d只能用来索引下推用,但是用内存的代价解决一个索引下推,不值得吧😂 所以,我的理解是只是建立一个b
1 回复 分享
发布于 2023-08-15 00:20 浙江
没有手撕么
1 回复 分享
发布于 2023-08-15 08:44 辽宁
没有手撕吗
1 回复 分享
发布于 2023-08-15 20:17 广东
来试试微众银行不,扫码选择意向岗位,填图片上码免筛选,详情点击https://www.nowcoder.com/share/jump/85127301693231654506
1 回复 分享
发布于 2023-08-31 11:15 广东
第一题和第二题的最后一问就不会了,也太难了吧
点赞 回复 分享
发布于 2023-08-14 16:30 广东
第3题是cb和db么
点赞 回复 分享
发布于 2023-08-14 19:10 四川
为啥第三题不考虑 a 啊,这样不是可以避免回表吗
点赞 回复 分享
发布于 2023-08-15 13:00 安徽
好怪的面试题
点赞 回复 分享
发布于 2023-08-15 23:58 湖南
m
点赞 回复 分享
发布于 2023-08-24 23:36 陕西
感谢分享,好难啊
点赞 回复 分享
发布于 2023-09-07 11:33 江苏
m
点赞 回复 分享
发布于 2023-11-14 14:17 浙江

相关推荐

冲芭芭拉鸭:你这图还挺新,偷了。
投递美团等公司10个岗位
点赞 评论 收藏
分享
字节 飞书绩效团队 (n+2) * 15 + 1k * 12 + 1w
点赞 评论 收藏
分享
36 289 评论
分享
牛客网
牛客企业服务