前言
面试岗位:电商后端 暑期实习
面试形式:技术面均通过牛客网进行远程面试,HR面为电话面试
面试时间:三月末-四月初,具体日期不记得了
一面
开场
面试官介绍部门情况及自身情况
自我介绍。
问答
挑一个STL的容器讲一下吧:
STL中有没有哈希容器,讲一下?
STL的哈希表是线程安全的吗,会出现哪些问题?
项目做了那些工作,都是怎么实现的?
select 和 epoll 的区别?
MySQL有哪些索引?
Redis为何针对同一类型实现不同的底层结构?
Redis如何实现分布式锁?
Redis跳跃表了解吗?
设计
如果要你实现微博或者朋友圈的功能,数据库需要那些表?具体功能要求为
用户可以关注其他用户
用户可以发微博
用户可以在主页中看到关注用户的动态
写一下查询时间线的SQL
用户量增加之后如何优化?
如何为用户生成全局唯一的ID?
如何实现atomic?
算法
二叉树的锯齿形层序遍历(LeetCode #103)
二面
开场
自我介绍
项目
针对做过的项目问了一些问题
问答
HTTP报文的结构?
HTTP首部字段?
HTTP主体中能放哪些内容?
TCP中TIMEWAIT了解吗?作用,时长,优化等等?
算法
微信群里抢红包算法(m元,n人),返回一个红包金额数组
每个人(前n个人)都能抢到钱
获得的金额都是随机的,但随机范围最大化(有机会获得可能的最多金额)
机会均等(第一个人和第n个人抢到相同金额的概率是一样的)
三面
开场
自我介绍
项目
问了很多关于多线程工作的内容
阻塞队列的实现
线程池的实现
日志功能的实现
IO密集型线程和计算密集型线程的区别等
问答
学过哪些专业课?
用户态和内核态了解吗?
进程和线程了解吗?
听说过死锁吗?有哪些常见的死锁情况,如何解决?
介绍一下协程?
算法
对单链表进行快速排序(LeetCode #148)
总结
面试总体难度不大,一二面的问题都是常见的八股文,三面重点考察了项目和操作系统的内容。
最后
在文章的最后作者为大家整理了很多资料!包括java核心知识点+全套架构师学习资料和视频+一线大厂面试宝典+面试简历模板+阿里美团网易腾讯小米爱奇艺快手哔哩哔哩面试题+Spring源码合集+Java架构实战电子书等等!
全部免费分享给大家,只希望你给作者点个三连!
如果有需要的朋友戳这里直接下载就好了,下载码:csdn