微店二面

微店二面


1. 自我介绍

2.在学校参加比赛具体做什么?

3.自研框架SpringMVC的实现逻辑

4.死锁的产生和解决方案?
(回答的不好,没有回答到前面两点,解决方案也只说了具体的一种解决方案,没有谈到原理)
①互斥条件:该资源同时只有一个线程占用;
②不可剥夺条件:线程获取到的资源在自己使用完之前不能被其他线程抢占;
③请求并持有条件:一个线程已经持有了至少一个资源,又提出了新的资源请求,而新资源已被其他线程占有;
④环路等待条件:发生死锁时必然存在一个线程-资源的环形链。
解决方案:破坏请求并持有条件和环路等待条件。实际操作可以保证锁获取的一致性(比如ABC线程,123资源,同步代码块都是先获取1资源的锁、再获取2资源的锁,最后获取3资源的锁。如果产生竞争,只会有一个线程竞争到1资源,其他线程这时就阻塞了,不会得到23资源)

5.堆排序和快速排序的区别?
(只说了两种排序的思想,最大堆的构建还不小心说成了最小堆的构建,要凉)
①10w数据量两种排序速度基本相当,但是堆排序交换次数明显多于快速排序;10w+数据,随着数据量的增加快速排序效率要高的多,数据交换次数快速排序相比堆排序少的多。
②实际应用中,堆排序的时间复杂度要比快速排序稳定,快速排序的最差的时间复杂度是O(n^2),平均时间复杂度是O(nlogn)。堆排序的时间复杂度稳定在O(nlogn)。但是从综合性能来看,快速排序性能更好。
③堆排序数据访问的方式没有快速排序友好。对于堆速排序来说,数据是跳着访问的,而不是像快速排序那样,局部顺讯访问,这样对cpu缓存是不友好的。
④堆排序的第一步是建堆,建堆过程会打乱数据原有的相对先后顺序,导致数据的有序度降低。比如对于一组已经有序的数据来说,经过建堆之后,数据反而变得更无序了。

6.如果现在有三个候选人,说说你的优势?
①接触过实际项目一年,能解决实际问题,规范意识强;
②微店是做电商的,涉及到很多并发编程的东西,自己对并发编程有一定了解;
③可以尽快到岗,可实习时间长。

7.为什么选择这个专业?
高考分数可以选择这个专业,自己也喜欢。

8.你对996的看法?
不抗拒,加班能够收获我想要的东西,为什么不呢?从个人的职业规划来讲,从单点到分布式到云,在**公司做了单点,接下来想接触分布式的东西,而微店符合职业规划,在微店加班能够收获很多东西。商品量跟京东差不多,但是人数差很多,如果在微店这边有机会进基础平台部门,梦想就实现了,很开心,而且我愿意继续为帮我实现梦想的公司奋斗。

9.你还有什么想问我的?
①您对我的印象?
②您是不是大厂出身的?
③方便说下你们的后端技术栈吗?(面完自己想的,如果是人力,可以问培训和晋升相关的问题)

PS:微店面试官给人留的印象还是蛮好的(虽然我感觉这波估计要挂),不少微店的程序员是大厂出身(二面的面试官是 淘宝5年 的大佬…),回头把一面面经补上
offer快到碗里来

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值