专栏名称: 程序员鱼皮
鹅厂全栈开发,持续分享编程技法和实用项目
目录
相关文章推荐
九章算法  ·  被裁6个月,躺平6个月,上岸! ·  3 天前  
九章算法  ·  10月LeetCode刷题小分队正式开始啦: ... ·  1 周前  
九章算法  ·  K.O大厂“原题”的《OOD面向对象圣经》, ... ·  1 周前  
九章算法  ·  微软疑似准备RTO… ·  1 周前  
51好读  ›  专栏  ›  程序员鱼皮

被算法题挂麻了。。。

程序员鱼皮  · 公众号  · 算法  · 2024-10-09 11:47

正文

今天分享 编程导航 里一位鱼友的问题,近期在准备面试,日常刷算法的时候可以调试代码,不清楚面试的时候是否也可以一步一步去调试来检验算法的结果。

相信这个是很多鱼友的困惑,今天看看编程导航嘉宾分享中大厂考察手撕算法的方式,以及需要准备到什么程度才能通过面试。


鱼友提问

老师好,想问几个关于大厂的算法笔试的问题。

我在一些刷题平台上刷题,写完代码可以一直提交,看自己哪些测试用例没有通过,大厂笔试的时候,也可以这样吗?还是只能自己写几个测试用例测试一下,然后只能提交一次?

另外,校招对于算法的考察范围是什么?之前好像看到有人说图算法不考,有的人说考的少。除了这个还有别的知识点不考吗?

再一个问题是,大厂算法题一般是中等题还是困难题,如果要保证通过笔试,最少要刷多少道呢?

嘉宾回复

首先,你需要知道目前刷算法题,有两种方式:

  • 一种叫“核心代码模式”
  • 一种叫“ ACM 模式”

你提到的在这种刷题模式,用的是核心代码模式,也就是你不用关注输入输出的处理,直接实现 Solve 函数就可以了。

但面试过程中的做题,一般是采用 ACM 模式,也就是你需要实现一个完整的程序,包含 Main 函数,从控制台读取输入,处理格式,再到调用 Solve 函数。

如果一直采用核心代码模式进行训练,面试时是有可能突然不知道怎么处理输入输出的,所以一般建议面试前采用“ACM 模式”训练一小段时间,熟悉一下。

你可以看一下笔试真题,采用的就是 ACM 模式,可以仔细看看差别。

算法的考察范围,图确实考得少,但也不排除有些组会考。不过有一点需要注意:即使是同一个公司,不同组的出题范围也可能不一样。

另外我不建议你采用排除法的方式去考虑这个问题,你就先按重要性排优先级去学,先把常规的数组、链表、二叉树、栈和队列、动态规划等等常规的算法搞定,然后有空再学学别的提升一下就可以了。

常规的算法刷题,其实现在很容易找了,各家刷题平台都有各自的题单,直接刷面试鸭也可以。其实大同小异,看你喜欢哪个,把题单拉下来都是一样的。

大厂涉及算法题的主要两个部分,一个是笔试阶段,这个阶段是比较难的,中等到困难都有。另一个阶段是面试过程中,面试官让你来做做题,因为时间缘故,一般就是考察 1~2 道题,正常情况下是第一道题简单~中等难度, 第二道题中等~困难。

要通过面试中的算法题,每个人情况不一样,但不管如何,多刷刷面经总是没错的,可以把常见算法题都刷一遍,题量 150~200 左右吧。

如果要通过笔试,那难度会大一些,除了上面说的,还有常见的一些的技巧也要针对性去刷,比如前缀和、差分、单调栈、二分等等(不是说你刷了一道这个类型的题就是会了,你得分类提升,刷到这个类型的题看一眼就知道思路),这个题量就因人而异了,有时间的话多多益善。

算法的提升有时间条件的话还是建议按版块来,一段时间内突破一个版块,然后长期下来提升会比较明显,寄希望于一两周内冲刺的,那就只考虑面试过程中的算法题那个阶段就好了。

以上就是今天的分享,希望能对大家有所帮助。

欢迎学编程的朋友加入鱼皮的 编程导航,和 3.2 万名 编程学习者共享知识、交流进步。

编程导航拥有 30+ 原创学习路线和专栏、上千篇 优质编程学习求职干货。

还有鱼皮从 0 - 1 全程直播带做的 原创项目 ,手把手带你 掌握独立开发项目的方法 ,并且提供 现成的简历写法 ,成功帮助不少小伙伴找到了工作。

并且编程导航里已经汇总了求职过程中的高频问题,求职前完整阅读一遍,能少走很多弯路,找工作不迷茫!

欢迎感兴趣的同学加入体验,鱼皮刚刚带大家做完了一个全新的项目,现在加入编程导航可获取往期 10+ 全套项目教程,限时 36 元优惠券等你领取:



往期推荐


我的编程学习小圈子

薪资写着 15K,Hr 压薪资,恶心人?

秋招零 Offer,准备冲春招了!

公司倒闭了,切实感受到互联网的寒气。。。

试用期转正答辩,很慌。。。

硕士毕业去外包,裂开了。