得物面经
1. 0907得物一面
-
1. string为什么设计成不可变
-
1. 从常量池出发:正是由于不可变,才有了字符串常量池来减少string的内存占用
2. 从性能出发:hashcode经常被使用比较,如果string可变,则hashcode失效,导致性能变差
3. 从并发出发:多个对象指向string,其中一个变了string,影响其他的对象
2. aqs为什么用双向链表
-
1. 删除任务时方向操作
2. 加入任务时有尾节点方便加入
3. 公平锁设计:如果不是头节点,则放弃争抢锁。
3. hashset怎么实现的不可重复放相同元素
4. hash冲突的解决方法
5. redis为什么快
6. [redis的多线程](https://zhuanlan.zhihu.com/p/646111642)
7. redis的内存淘汰策略
8. mysql回表查询
9. 手撕二叉搜索树第k小
-
1. string为什么设计成不可变
-
1. 从常量池出发:正是由于不可变,才有了字符串常量池来减少string的内存占用
2. 从性能出发:hashcode经常被使用比较,如果string可变,则hashcode失效,导致性能变差
3. 从并发出发:多个对象指向string,其中一个变了string,影响其他的对象
2. aqs为什么用双向链表
-
1. 删除任务时方向操作
2. 加入任务时有尾节点方便加入
3. 公平锁设计:如果不是头节点,则放弃争抢锁。
3. hashset怎么实现的不可重复放相同元素
4. hash冲突的解决方法
5. redis为什么快
6. [redis的多线程](https://zhuanlan.zhihu.com/p/646111642)
7. redis的内存淘汰策略
8. mysql回表查询
9. 手撕二叉搜索树第k小
全部评论
相关推荐
点赞 评论 收藏
分享

点赞 评论 收藏
分享
03-16 22:00
武汉大学 C++ 点赞 评论 收藏
分享
点赞 评论 收藏
分享