前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >我的牛客网面试经历

我的牛客网面试经历

作者头像
mythsman
发布2022-11-14 15:51:30
8470
发布2022-11-14 15:51:30
举报
文章被收录于专栏:mythsman的个人博客

前言

近期发现有很多同学通过搜索 “牛客网怎么面试“、“牛客网面试怎么作弊“之类的关键词进来。。。感觉职场还是要多一些真诚,少一些套路😊。

起因

其实本来我并不知道牛客网也在招人,不过一直觉得牛客网这个平台非常棒,之前也在这里刷过一些题目,平时没事的时候就会到讨论区默默窥屏,看看大牛们是怎么面试的,顺便也将自己的经历分享给其他人。一次偶然的经历,我得知了牛客网似乎也在招聘,抱着试试看的态度,就投了一份简历过去。可能由于是初创的小公司,办事效率很高,第一天晚上投简历,第二天就打电话约面试,第三天晚上就正式面试了。而且让我没想到的是,面试官就是牛客的CEO叶老大。。。

面试过程

和我想象的不一样,这次面试没谈项目,没谈人生,没谈理想,也没谈什么诗和远方。我想应该是由于面试官本身是一个资深程序员,相比hr出身的面试官,更有务实性,给人一种talk is cheap的感觉。不过我也没感受到来自他的压力,他本人应该是那种文静随和的类型,不会大段大段的罗嗦,而且,很显然他早就准备好了套路,估计也是阅人无数的那种类型。下面简要整理下这次的面试过程。 我们是在牛客网的面试平台上进行的,让我耳目一新的是,面试平台不仅仅是视频聊天,还可以直接编程运行。而且你所敲的每一个字母,面试官那里都能实时显示,所以可以非常方便的就代码进行沟通。当然,这样也基本杜绝的作弊的可能。 和我之前说的一样,主考官非常务实,上来就说我先搞几道题试试。。。 题目是他当场边打字边解释。

第一题

第一题大概是热身,让我实现一个字符串比较函数。 显然这个还是很简单的,不过发生了一个小插曲,就是他让我实现的函数名叫strcpy。。。我不知死活的向他提议何不改成strcmp。。。他想了想似乎很有道理,把函数名改成了strcompare。。。 题目很简单,一小会就写好了,他研究了一会,试了试边界条件,发现没什么问题,这道题就算是过了。

第二题

第二题稍微考察算法能力,让我实现一个正则匹配的判断函数,也就是给两个串s1,s2,其中s1是含有*和.的模式串,s2是普通字符串,让我写一个函数判断s1是否能匹配s2。 这就体现出我楞的一面了。 我上来想都没想,直接用递归搞,虽然三下五除二把一些简单的样例过了,但是仔细研究则发现很多边界条件都不对。面试官则跟我一起看,有种帮我一起找bug的感觉,不过我心里清楚,要是我自己的bug让别人找到了拿岂不是很没面子。还好我当时没有太抽,研究了一会终于找到了那个小bug。面试官看了看,试了试几个边界,分析了下我的代码,发现没啥问题,就说ok。但是,他接着问,你能分析你这代码的复杂度么。。。我有点小懵,其实递归算法的复杂度我还真没仔细研究过,于是瞎猜了猜,感觉不太对劲。他想估计有点觉得我开始不靠谱龙,问我你知道递归函数的复杂度怎么算么。。。我忽然想起了徐老师乐此不疲讲的归并排序,就说应该是要解一个。。递归方程?他表示大差不差吧,这才算放过我。 正当我以为万事大吉的时候,他又问我,你能不能把你的时间复杂度降低一点啊,我想了想没想出啥好办法。。。他问我会不会动态规划。。。我。。。好久没刷题,想了一会才想出正确的解法。。。回头一看。。。这不就是个简单的不能再简单的dp么。。。虽然绕了一些弯子,不过好歹搞了出来。。。

第三题

面试官问我会不会java,我当然会,不过考虑到好久没写,怕手生,顺便也给自己台阶下,我表示我们虽然上过这课,但是课比较水,没有项目练手,他笑了笑表示了解。于是就让我说一下java中抽象类跟接口的区别。我当时短路,只说我知道接口只定义函数的声明,而抽象类的函数可以有具体实现。然后他问我一个类能实现多少接口,一个类能继承多少个抽象类,我这才想起来原来这也是一个区别。。。

第四题

这是我整场面试最大的痛。。。 问,给你八颗药,AAAABBBB,他们从外观上一模一样,现在我要每天吃一个A一个B,问有没有好办法。 我想了半天,表示我办不到,如果有什么好方法,我也会觉得很神奇。。。他笑笑表示。。。你回去好好想想。 回去我问了舍友。。。被嘲讽。。。

第五题

第五题还是挺有意思的,有种诡辩的感觉。 问,我们照镜子的时候,大家都说左右是反的,但是为什么不说上下是反的呢? 显然,常识告诉我上下是不“反”的,但是他这么一说,倒是真给人一种上下也应该是反的的感觉。其实问题的关键应该在于参考系的选择,我们说左右反,是因为我们以上下为轴来看的,这显然不够“有说服力”,如果我们把脑袋横过来看,把以左右为轴来看,那么上下也是反的。我当时感觉答的意思应该差不多,面试官表示其实这其实是个开放性的题目,主要看你能不能把你的话圆过去,只要没有太大的逻辑问题都行。

其他

总体上,整个过程下来感觉还是挺轻松的,主要是现场编程可能会有点压力。有人说小公司更加注重让你直接做事,大公司才注重你的学习能力,其实我倒觉得这个表述还是不够客观的,至少这次面试,面试官没有出任何项目经验(板砖)的题目,反而全是算法题和思维题,而且虽然公司是用java做开发,但是他也能包容没有很多java开发经验的同学。不过这次体验最大的收获应该在于,小公司有时候也不比大公司容易进,从工作角度讲,小公司的工作激情可能比大公司更高,从待遇上讲,一个有潜力的小公司待遇甚至不输BAT。 Exp++。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 起因
  • 面试过程
    • 第一题
      • 第二题
        • 第三题
          • 第四题
            • 第五题
            • 其他
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档