我从2sum不会写,到过了狗家和脸家实习的电面。走了很多弯路。现在回过头来看,埋头猛刷,其实不一定是最有效的方式。尤其是Google,面试过程中,特别强调交流。所以我们平时刷题就需要安装四个步骤来要求自己。 第一是communication。一定要和考官交流思路,还有就是不明白的地方一定要问清楚。 第二是problem solving,要展示自己的解决问题的策略。比如选数据结构什么的,一定要讲明白为什么要用各种算法和数据结构。 第三是coding。在前面两步的基础上,写出来干净正确的代码。 第四是testing,一定要回去验证自己的代码。这个过程中可以分析一下代码的复杂度。 怎么去练以上的步骤,有详细过程解析的入门教程就能起到很重要的作用。我在刷题的中期,在地里推荐下,看了educative的课程。特别有帮助。我现在大概介绍一下我用过的几门课 (使用coupon code: awesome-developer-20 享受全网站课程 额外20% off): Data Structures in Java: An Interview Refresher.这一门课是把数据结构里面的基础数据结构都用java实现了一遍,对于用java的同学特别有帮助,java的基础在刷题的过程中,还是要必须掌握的。从复杂度开始,Arrays,LinkedLists, Stacks/Queues, Graphs, Trees, Trie, Heaps, Hash Tables,全都实现了一遍。而且还有配套的基础LeetCode题。是一个入门的很棒的教程。
使用coupon code: awesome-developer-20 享受全网站课程 额外20% off。
谢谢大家。
|