极卷环境下,中小公司的面试也搞起了手撕算法

295 阅读3分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第5天,点击查看活动详情

概述

最近正在找工作,投下去的简历犹如石沉大海,仅有几块石头有了回响。招聘平台除了外包如往常活跃外,其他沉寂了不少,甚至拔高姿态只要“高”学历。

最近面试了几家中小公司,或许是供求关系两极反转的关系吧,每家基本都有一两道手撕题,也许是面试官水平各有千秋吧,尝试不到10分钟就不停的催促了,且问题都很有“趣”。

公司A(做海外直播教育的吧)

开篇喜欢问他准备好的那几道八股文问题

手撕题1:指定范围随机数

乍一看还挺正常的,没啥问题,我推算一下后写出下面代码

const range = (min, max) => {
    // 套个参数进去推算 range(5, 10)
    // [0, 1) * (10 - 5) + 5
    // [0, 5) + 5
    // [5, 10)
    return Math.random() * (max - min) + min
}

这时候面试官看到了左闭右开区间,让我改成都是闭区间,就是能取到上限。

我问了能不能用取整四舍五入,面试官说不能,小数需要保留。

试了几分钟没搞出来,面试官就切下一题了

事后回想了一下感觉没那么简单,几分钟是很难搞出来

手撕题2:笛卡尔积

例子:[a, b, c], [1, 2, 3, 4], [e, f, g],将这三组每项分别组合起来的所有可能,当然这个是举的例子,不一定是三组,组数是不定的。

有思路,代码搞了10分钟没搞出来,时间不充裕可能也就给个10分钟吧。

公司B

小公司,hr挺会画饼的,说以前p10 p11 的汇报对象是他们ceo.

手撕题1

面试官说是他儿子小学作业题,看着有趣就拿来考了

image.png

从A点到B点有多少种走法,每次只能向上或向右走,红点不能走。

面试官提示先看最近几格的走法,由远及近的推导,说不要想得太复杂。我猜大概是先用近几格找共性规律,然后递归整个表格,他说不要像等差数列之类的找规律,也不要用程序实现的思维去思考描述。

面试官虽然提示了,但感觉这提示的思维局限性太强,他始终用他的解题方式来引导你。

最后问他答案,也还是找规律,没听太请,貌似是左边点和下边点的总和,红点看成 0 之类的,程序还是像我说的递归或dp。

总结

供求关系两极反转,部分公司也搞了手撕题,题目正常给时间还好,最怕玩出花。

随机数那题有思路的小伙伴可以分享一下。