字节住小帮暑期实习

1、项目的收获,难点,除了这些技术的难点,遇到困难怎么解决的
2、arraylist和linkedlist区别,增删操作的具体实现,什么情况下添加时从头节点开始遍历,linkedlist为什么要做成双向链表,除了为了实现deque和queue接口还有什么原因,痛苦面具x1
3、arraylist和linkedlist按照元素的值查找的速度相同吗,那可以用什么方法加快linkedlist查找,痛苦面具x2,答了arraylist元素有序的情况下可以二分,linkedlist可以用跳表结构来加快查找
4、hashmap扩容原理,为什么1.7之前一直要使用头插法,痛苦面具x3,瞎答的尾插法还要多维护一个tail指针,头插直接在数组位置插入快,提示想想rehash,然而还是不会
5、1.8的红黑树,为什么要用红黑树,大概说了一下红黑树和AVL树
6、ConcurrentHashMap
7、jvm垃圾回收机制,有实践看过jvm的垃圾回收过程吗,有没有自己制造过oom异常,除了不停new对象还有什么方法快速制造oom,提示修改jvm参数,怎么制造栈内存溢出
8、mvcc和锁
9、讲讲IOC和AOP,spring具体怎么实现的
10、redis的数据结构,redis的集群
11、怎么为一个服务限流,答了mq和sentinel,怎么自己去设计一个限流,答了可以用redis维护一个记录,实现类似semaphore锁
12、连续子数组最大和
13、最长递增子序列
14、反问

感觉写算法不知道怎么和面试官交流,但两个贪心思路自己说不清,支支吾吾半天更尴尬了。。。
面完很快收到二面通知了,感谢面试官放海
许愿二面

#字节跳动实习##字节跳动##面试题目#
全部评论
我看有种说法是按程序局部性原理,最近操作的数据被访问到的可能性更大,所以放在链表头节点
1 回复 分享
发布于 2022-03-20 14:23
Tql
点赞 回复 分享
发布于 2022-03-18 19:44

相关推荐

努力学习的小绵羊:我反倒觉得这种挺好的,给不到我想要的就别浪费大家时间了
点赞 评论 收藏
分享
耀孝女:就是你排序挂了
点赞 评论 收藏
分享
点赞 6 评论
分享
牛客网
牛客企业服务