基本信息
时间:2017-09-15
地点:望京,利星行中心A座
其实要不要去面试特别纠结
一来,不确定这个公司好不好,报他完全是因为连实习工资都能标到500,估计正式员工薪资更高
二来,其实已经有不错的offer了,不太想花费不必要的精力去面试
后来想想,还是要有责任感,答应了人家,就去吧,人生需要丰富的经历~
到了后发现,公司环境不错,氛围也很轻松活泼
而且遇到好多清北的,瞬间觉得来对了~
有竞争才有动力!
面试过程
(1)第一面
1、自我介绍
2、问项目,项目细节,射击到系统架构什么的会细问,例如什么是Spring的核心、IoC、Aop
问我Spring的IOC是不是就变成了一个单例生成器等等
3、算发题:写函数add()表示添加元素,函数getMedian()表示返回中位数
我的解答是用大、小顶堆维护两个堆,保证两者的元素个数差大于等于1(leetcode上有类似的题)
4、无意中提到B-树,他问我B-数和二叉树区别,说什么二叉树在内存,B-树在磁盘云云~
(2)第二面
ps. 等了一个小时,心理很不爽,幸好等待室的氛围不错,还有聊天什么的
hr放的宣传视频也挺有趣
1、自我介绍
2、聊项目,你的角色、工作内容
3、遇到的技术问题、算法
4、设计题:
1)一个练习里面有多个题,学生做完一个练习,我们可以得到他正确的题目数
2)要求事实得到top100的做题数排行榜
我用的数据库解决方案,就是select语句,他叫我优化查询性能等等
解决方案为:查询语句优化;加索引;分布式方案等等’
3)要求每个学生能够知道自己在所有人中的做题数目排行位
对于“2)”很好做,对于“3)”给的是线性的解决方案,其他的方法没想出来
ps.感觉面试官也没有解决方案,他是循循善诱,根据你的思路叫你讲下去,然后叫你分析你的方法
4)还是找到自己的排名问题,问在内存中如何快速找