算法面试不仅仅是正确的回答问题
对于面试中遇到的大多数问题,都能有一个合理的思考路径
什么是算法面试?
- 让大家在面对面试中的算法问题时,有一个合理的思考路径
- 不代表能够“正确”回答每一个算法问题,但是合理的思考方向其实更重要,也是正确完成算法面试问题的前提
- 算法面试优秀不意味着技术面试优秀
- 技术面试优秀不意味着能够拿到Offer
记得点赞收藏加关注哦 ,我这里也准备了很多面试热门知识点和大厂面试题,希望对大家有帮助!有需要的朋友可以在下方【公众号私信回复“资料”免费领取

算法面试不仅仅是正确的回答问题
什么是给出合理的思考路径?
- 算法面试的目的不是给出一个“正确”答案,而是展示给面试官你思考问题的方式。
“正确”本身是一个相对概念
- 算法面试不是高考。
- 把这个过程看作是和面试官一起探讨一个问题的解决方案。
- 对于问题的细节和应用环境,可以和面试官沟通。
- 这种沟通本身很重要,它暗示着你思考问题的方式。
例子
我们需要对一组数据进行排序
- 设计排序接口,标准库的设计,业务中排序算法。
- 排序是基础操作,很重要。
解决
快速排序算法:O(nlogn)
- 忽略了算法使用的基础环境。要动态选择。
(向面试官提问):这组数据有什么样的特征?
- 有没有可能包含有大量重复的元素?
- 如果有这种可能的话,三路快排是更好地选择。
- 普通数据:普通快速排序就行了;java语言标准库排序使用的三路快排。
- 是否大部分数据距离它正确的位置很近?是否近乎有序?
- 如果是这样的话,插入排序是更好地选择。
- 按照业务发生顺序,先发生先完成,几乎有序,插入排序是更好的选择。
- 是否数据的取值范围非常有限?比如对学生成绩排序。
- 如果是这样的话,计数排序是更好地选择。高考成绩取值范围有限:计数排序更好。
(向面试官提问):对排序有什么额外的要求?

算法面试不仅要求正确答案,更看重思考过程。理解问题,展示思考路径,合理选择排序算法,如三路快排、插入排序、计数排序等。面试包括技术、项目经验、行为问题,准备时避免完美主义,注重基础算法和数据结构,如排序、二分查找、基础数据结构的使用。同时,学会如何回答问题,注意题目条件,优化算法,编写规范的代码。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



