连着约了两面
一面(时长约70min)
面试官是一个很温柔的小姐姐,对方没开视频
1、上来自我介绍 最好英文 本人没准备 用中文自我介绍的
2、介绍一个你比较拿手的项目
3、白板手撕算法
① 修改bug后会更新产品版本号,比如1.0.0,1.0.1,2.1.0等,设计一个算法向用户中还没有更新到当前版本号的用户发送推送提示其更新。
② 给一个schedulelist里面有n个时间信息,每个时间信息包含dayofweek星期几、hour几时、min几分,表示系统在list里的这些时间会定时更新升级,返回下一次的更新时间是哪一天哪个时间。
第二题因为时间不够没写代码只是沟通了下思路。
算法写的不对什么的面试官小姐姐会提醒你,一点点引导你,让你想更优的思路。
二面(时长约60min)
面试官是一个挺年轻的小哥,对方也没开视频
1、自我介绍
2、介绍一个项目
3、你这个项目最终投入使用了吗?
4、平时怎么学习android的?(因为自己项目经历里有android开发)
5、觉得自己的android开发能力怎么样?是有系统学习过还是只是学习了项目中运用到的?
6、你常用java,了解java的数据结构吗?介绍一下
7、什么是堆?向堆里添加一个元素具体过程是怎么调整的?调整的时间复杂度多少?
8、Java底层的像JVM、GC等了解吗?介绍一下
9、英语怎么样?用英文问了几个问题,英文回答
① 你用过什么微软的产品? 有什么反馈?
② 请说出你想要加入微软的三个理由?
10、白板手撕代码
给一个山脉数组,前k个元素是递增的,后面是递减的,求中位数。(最优时间复杂度是O(logn))
全部评论
(10) 回帖