大厂的Android岗面试,到底要刷多少道算法题才算稳?

写在前面的话

国外人才的筛选标准有很多值得借鉴的地方,这些年来,国内互联网面试的流程逐渐在向国外靠拢,像字节跳动、BAT 等大厂,手撕算法题 已经成为了必选动作。

考算法也是公司面试筛选人的低成本办法,如果你写出了算法并且通过了,要么你聪明要么你勤奋(刷题了)。

不管你是学什么语言:C、C++、python、Java、GO,算法这一关你必须得过。而且算法也算是一道工资水平的分水岭,在和HR谈薪的时候是占有一定的地位的。

那么,Android的大厂面试到底要刷多少道算法题才算稳呢?

算法的地位

大厂考算法一般会分两步,第一步:让你直接说思路;第二步:让你实操写代码。

通过这两步,就可以看出你的编程内功是否深厚,除此之外还能多维度考察你的其他能力,比如:逻辑思维清晰与否、debug 能力如何、编码习惯怎样、是否能写出可维护的代码等等…所以,近几年国内互联网大厂面试中,算法的比重也越来越高,算法不扎实,笔试可能就直接被刷了。

既然已经了解了重要性,那就开始努力吧。

下面是大厂面试的常考算法题点

一般来说,数据结构和算法会连在一起考,这里,我把面试核心知识点列了出来,大家可以参考学习,逐个击破。

  • 栈与队列:先进先出、后进先出
  • 线性链表
  • 查找:顺序查找、二分查找
  • 排序:交换类、插入类、选择类
  • 树、二叉树、图:深度优先(DFS)、广度优先(BFS)
  • 递归
  • 分治
  • 滑窗
  • 三大牛逼算法:回溯、贪心、动态规划(DP)

算法到底该怎么学?

最好或者最笨的方法就是刷题,强烈推荐力扣:https://leetcode-cn.com
建议刷300题以上,要覆盖简单、中等、困难的题目。面试前要训练手感,不要生疏了,可以选保持每日或几日一题。

在刷题之前建议看一下这些书(对刷题的理解会有很大的帮助):

《漫画算法-小灰的算法之旅》

如果你之前没有任何算法基础,这边书很适合你,可以补充数据结构和算法的基础知识,像什么是时间复杂度空间复杂度、查找、排序等。
如果你有了一定基础了,建议你直接跳到最后面的算法实战部分。

《剑指 offer》

非常经典的一本书,学算法的人必刷。但是要注意了,这边书里面的题目是用 C++写的,如果你是 Java 开发人员可能会有点影响。但是要记住学习算法最关键的还是解题思路和方法,用什么语言实现是其次的,如果你时间比较多我是建议你用 Java 语言再实现一遍。

《labuladong的算法小抄》

非常推荐!这是一本很新的书,写书前作者在 Github 开源了一个项目,主要讲解 LeetCode 解题套路,Start 总数排名前40。在书的开头讲解了学习算法的基本思维和套路,建议看这边书的同时再配合 leetcode刷题,疗效非常棒!

《算法导论》

要是不推荐这本书是不是显得我有点 low 了,这是一本科班出身的同学必看必学的经典大部头。国外大佬写的,国内翻译的经典之作,虽然是经典但是不建议刚入门算法的同学看,因为看了这本书你可能要放弃算法了,比较难看懂。建议有了一定基础再入手这边书。

如果你觉得看书比较枯燥,可以推荐你看一些极客时间的专栏,不过是收费,但是质量非常高。

《数据结构与算法之美》

这个专栏是文字+语音,作者是王争,前 Google 工程师。他采用最适合工程师的学习方式,不拘泥于某一特定编程语言,从实际开发场景出发,由浅入深教你学习数据结构与算法的方法,帮你搞懂基本概念和核心理论,深入理解算法精髓,帮你提升使用数据结构和算法思维解决问题的能力。

《算法面试通关40讲》

这个专栏是视频,作者是覃超,前Facebook工程师。作者会用白板带你一步一步解题,层层深入一环扣一环,每一题还会用多种解题方法。我基本看完了,收获颇多。

leetcode、书和极客专栏可以并行,学练结合,不要光看不练哦。

复习建议

(1)合理安排复习时间

准备来年春招的话,时间上不用太紧张,也不用废寝忘食,只要好好做足准备,就可以坦然应对面试了。

复习周期个人建议是三个月,不宜太久,每天四五个小时(以上)就可以了(高效率专注的学习),久了就容易懈怠或者闭门造车,两个多月的时候最好出去开始试水,检验一下自己的学习效果。

复习计划的制定和进度的把控也很重要,可以参考别人的学习计划去学习,再根据自己的实际情况去做适当的调整。

(2)复习内容建议:

建议以基础知识为主,尤其是准备校招的同学,在这个阶段,用人单位会更加注重这一点。

(这个模块要说完内容比较多,已经整理成立一份比较系统的资料,后文会展开详细的解说,需要完整复习资料的朋友直接点击文中的蓝色字体领取)

(3)复习参考书目:

  • 《第一行代码》
  • 《Android开发艺术探索》
  • 《Android高级进阶》
  • 《剑指offer》
  • 《程序员面试金典》
  • 《程序员代码面试指南 IT名企算法与数据结构题目最优解》
  • 《编程之美——微软技术面试心得》
  • ……

这些经典的书都可以看看。(书有些多,可以点击文中的蓝色字体,获取完整书单

(4)其他部分:

除了刷题和看书,系统的复习一下基础知识,还有就是复盘下自己的项目经历,把亮点都发掘出来。在多如牛毛的简历中,一份简历能不能给面试官留下深刻的印象就看你的简历有没有亮点,这些亮点是可以从你的项目中看出来的。

项目相关准备可以参考一下这篇文章:项目经验不会说?字节跳动小姐姐手把手教你"套路"面试官!

附录

面试的话,肯定不是只有算法题,最近我刷遍了力扣和牛客的面试题,又问了很多最近参加大厂面试的群友,然后给大家整理了一份《2021年Android大厂面试攻略大全》,欢迎大家前来领取,相信这份资料对大家的面试肯定是有帮助的。

下面是从牛客等网站上面收集整理出来的阿里等大厂Android岗常考常问的面试题,希望对正在准备面试的朋友有帮助。

算法根基不太稳的同学,想要进军大厂的,不来加入我们快乐白嫖吗?

完整版我和其他的Android学习资料一起放在了我的电脑,需要的可以通过戳这里的蓝色字体找我免费领取

Android核心知识点笔记

2020年百度、阿里、腾讯、字节跳动Android高频面试题解析

2020最新Android大厂高频面试题解析大全

最后在这里,希望大家可以好好利用上面准备,在接下来的面试中大展拳脚,一举拿下心仪的offer。

需要的可以通过戳这里的蓝色字体找我免费领取。

推荐阅读

猜你喜欢

转载自blog.csdn.net/BUGgogogo/article/details/113642535