zoukankan      html  css  js  c++  java
  • 大厂面试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。

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

  • 相关阅读:
    《Vue.js 2.x实践指南》 已出版
    《H5+移动应用实战开发》已出版
    关于《ASP.NET MVC企业级实战》
    ASP.NET MVC企业级实战目录
    ASP.NET MVC4入门到精通系列目录汇总
    网站服务架构
    ASP.NET MVC搭建项目后台UI框架—1、后台主框架
    webpack介绍—上
    通过一个vue+elementUI的小实例来讲解一下它们是如何使用的
    不要为自己学历低找借口
  • 原文地址:https://www.cnblogs.com/chengsisi/p/14417681.html
Copyright © 2011-2022 走看看