查看原文
其他

中大厂面试,应该怎么回答一道算法题

帅地 脚本之家 2023-12-27
将 脚本之家 设为“星标
第一时间收到文章更新

本文经授权转自公众号 帅地玩编程(ID:di201805)

如若转载请联系原公众号

现在互联网中大厂对算法题的考察是越来越多了,最近也有一些学员问我应该怎么去回答的这么题。比如我应该是先说思路,再来写代码,还是说我直接写代码?比如我如果不懂的话,是要直接说不懂呢,还是说主动叫面试官提示我一下呢?又比如说我应该是要直接给出最优解呢,还是说先给出一个次优解,然后等待面试官提问,我再给出更好的解法呢?....

相信其他人可能也会有这方面的疑问,所以呢我就做一个简单的一个回答。

首先在面试的时候,面试的时间是有限的,特别是写算法题部分,特别费时间,所以我们在做题的时候,最好可以先跟面试官讲一下我们的思路。这样可以让面试官确认你确实是会的,你再写下来给他看。因为有时候你会和你能不能写出代码是两回事。但是呢你要至少先证明一下,你可能是会的,这样子的话也不会说浪费时间。

就千万不要你不会,但是你又在那里硬硬撑着。

如果你确实不会的话,那其实分两种情况啊,一种是你完全不会,就一点思路也没有,那你就直接说不会了,就不要浪费时间了。

还有另外一种就是你觉得你有可能是会的,只是说你可能还缺乏一点思路,没有想通,那你可以问一下面试官能否提供一下思路。一般来说面试官可能是愿意给你提供思路的,当然,即使面试官不愿意给你提供提供思路,那也问题不大,问了又不会减分,是吧。

第二的话就是我们应该直接给出最优解,还是说我们给出次优解呢?

首先我认为如果你懂最优解,就是直接给出最优解就可以了。就不用等着面试官来一点点问你了,万一面试忘记不问你了呢?所以你就给出一个最优解就可以了。

然后如果你给了最优解之后,如果你还掌握了其他的一个方法,比如说除了这个最优得知,其实还有一个更好的方法,但是方法非常非常非常的复杂,而且代码比较复杂,那如果你懂的话,你也可以跟面试官说。

最后还有一个很重要的就是我们在做一道算法题的时候,你一定要先和面试官问好边界条件。除非是这道算法题它已经描述的很清楚了,把各种边界条件都说清楚了,如果没有描述的很清楚,那你一定要问好别人边界条件,比如说它的数据量是多大的,又比如说会不会出现一些特殊的情况?

反正写代码之前一定要问好,因为如果有些特殊的情况比较多的话,你可能需要做很多特殊的处理,但是呢这些处理可能处理起来特别麻烦,那你肯定就最好先咨询一下。当然,如果处理起来不是特别麻烦,那你就直接处理了。

  推荐阅读:
  1. OPPO校招面试算法真题解析
  2. 算法面试真题:完美走位
  3. 面试官:这么简单的二叉树算法都不会?
  4. 常见的算法优化套路,用空间换时间
  5. 拿到银行科技公司的 offer,要不要去?
继续滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存