V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
admirez
V2EX  ›  职场话题

面试考算法题真的能体现一个人技术能力吗

  •  
  •   admirez · 2018-04-22 12:08:50 +08:00 via iPhone · 6068 次点击
    这是一个创建于 2440 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我有次面试一个算法题答的不错的,顺便问了下多线程同步就答不上来了
    27 条回复    2018-04-24 09:56:09 +08:00
    peesovv
        1
    peesovv  
       2018-04-22 12:14:38 +08:00 via Android
    vegito2002
        2
    vegito2002  
       2018-04-22 12:15:24 +08:00
    题目出的好就能
    peesovv
        3
    peesovv  
       2018-04-22 12:15:35 +08:00 via Android
    如果你问的不都是套路算法题的话
    kunluanbudang
        4
    kunluanbudang  
       2018-04-22 12:33:27 +08:00 via Android
    算法是技术能力中的一个子集
    takato
        5
    takato  
       2018-04-22 12:36:42 +08:00   ❤️ 1
    算法考的是元认知。
    毕竟现在的框架都是人们想出来的,如果元认知能力过关,那么工作过程中一些困难的问题也可以拆解成相对容易的子问题一一攻破。
    pandachow
        6
    pandachow  
       2018-04-22 13:03:44 +08:00
    从来没有人说算法题能体现一个人的技术能力啊…
    它就是考你的算法知识而已…多线程同步也是考操作系统知识啊…面试的时候不得各个知识都考核吗…
    pslydhh
        7
    pslydhh  
       2018-04-22 13:06:25 +08:00
    我多线程 /同步很强
    wshcdr
        8
    wshcdr  
       2018-04-22 13:08:14 +08:00
    能把算法想清楚的人,并不多
    sudoz
        9
    sudoz  
       2018-04-22 13:14:02 +08:00
    akira
        10
    akira  
       2018-04-22 13:17:13 +08:00
    那你在面试题里面加入线程相关知识点就好了啊
    sagaxu
        11
    sagaxu  
       2018-04-22 13:21:01 +08:00 via Android
    知道和知识的区别,多线程同步是知道,算法是知识。知道是一看就懂的东西,可以快速掌握。算法是知识,需要花很多时间克服逻辑上的瓶颈。
    bhagavad
        12
    bhagavad  
       2018-04-22 14:12:22 +08:00   ❤️ 4
    基础算法题并不能体现一个人的能力,而是体现一个人的职业素养。数据结构、算法、操作系统等都是大学必学的课程,你说的线程同步、进程通讯等是属于操作系统部分的知识,以上这些部分都是属于基础知识范畴的。

    面试覆盖的点很多,包括专业技能、表达能力、学习能力、拓展能力、价值观、责任心、韧性等。这个说的比较高大上,其实简单点说就是看能否胜任所需要职位,以及能否跟现同事良好协作,用更主观的话来讲,就是面试官看你“爽不爽”。

    说具体点,我知道对于挺多岗位来讲,即使不会基础算法照样能干活,但是有基本专业素养的人的代码质量比基础知识都掌握不了的人的代码质量绝对要高很多的。在与同事沟通时,你得确保别人说的话你是可以明白的,如果别人跟你说你代码有线程安全问题,或者说你的数据结构应该用 map 而不是 list,但是你却不清楚这些的具体区别,是不是很尴尬?你不能说“老夫写代码就是一把梭”,这样大家谁还相信你的产出?

    所以,如果想走技术路线,基础知识是必备技能,花点时间学习一下吧,其实并没有想象的那么难。
    mooncakejs
        13
    mooncakejs  
       2018-04-22 14:17:46 +08:00
    搞清楚线程啊,同步啊协程啊,用不了多少时间的
    aheadlead
        14
    aheadlead  
       2018-04-22 14:22:47 +08:00
    能把 NOI 里面的题目搞定的,解决日常工作问题的瓶颈绝不在智商。
    就算只是普通 ACM 比赛拿奖,其智商拿来解决普通的工程问题也游刃有余。

    通常来说是这样。我就不行智商不够水平太菜…
    framlog
        15
    framlog  
       2018-04-22 15:22:52 +08:00
    算法能力强理解多线程应该很快的
    starcraft
        16
    starcraft  
       2018-04-22 15:36:34 +08:00
    考智商啊,就像公务员行测一样。培训、自学、学历不够的,全是只背结论不懂原理过程的,这么学算法就不行了。这就和考研要考数据结构,不考 api 使用一个道理。
    daozhihun
        17
    daozhihun  
       2018-04-22 15:39:54 +08:00 via Android
    算法答的好的人思维能力很强,学别的也很快。当然排除那些很常见的可以死记硬背的。
    maxco292
        18
    maxco292  
       2018-04-22 16:31:05 +08:00 via Android
    除了基础的算法知识外,我觉得更多考察一个人聪不聪明吧,毕竟逐步分析问题解决问题是工作中极为重要的能力。
    weakish
        19
    weakish  
       2018-04-22 17:37:32 +08:00
    PoW
    SourceMan
        20
    SourceMan  
       2018-04-22 17:50:22 +08:00 via iPhone
    可以的
    feather12315
        21
    feather12315  
       2018-04-22 18:17:21 +08:00 via Android
    @mooncakejs - -内部实现呢?
    bobuick
        22
    bobuick  
       2018-04-22 20:49:55 +08:00
    照我的经验来说,如果职位是普通 web 开发,或是普通业务型的后端开发,那么面试时候的纯算法问题,无法比较多的证明一个人的能力,大概能占 40-50%, 经验和解决问题的能力能占 60%左右。startup 型项目经验比重要再上调。
    如果是明显偏重抽象,算法等非业务开发类型的,算法比重能表名与这个职位至少 60%以上的比例。

    不过总之,如果算法题目都很不错,那么肯定是印象不错的了。
    bleaker
        23
    bleaker  
       2018-04-23 06:46:37 +08:00 via iPhone
    在二者只能取其一的情况下,取决于你想招立刻能干活的人还是聪明人。自己的经验表明,和聪明人共事给自己带来的启发和收获,比一些时候给他收拾摊子的付出要大得多
    tianrandai
        24
    tianrandai  
       2018-04-23 10:13:47 +08:00
    大概就是基础决定上层建筑的意思,可以通过这些判断候选人未来的发展潜力。同样能完成功能性代码的人市场里有很多,考算法能最快地区别哪些是未来有解决问题突破难关能力的,哪些只能搬砖。
    cominghome
        25
    cominghome  
       2018-04-23 10:30:39 +08:00
    有帮助。只要不是:一、不相干岗位(鹅厂好像技术岗都要问)二、面试者没有提前背过题。
    UIXX
        26
    UIXX  
       2018-04-23 15:29:30 +08:00
    能,如果对方能回答并解释我提出的算法问题,而同时我也被说服了:
    1、TA 肯定为面试做了准备。我会认可 TA 的求职态度。(大部分人在日常职业开发中都不会自己去撸数据结构或者算法)
    2、TA 自己理解了这个算法 /花时间去研究了算法。至少不会太笨。
    3、如果是非科班出身的话,我会认为他有欲望去学习基础知识。
    4、便于后续的面试延伸
    bbx
        27
    bbx  
       2018-04-24 09:56:09 +08:00
    不能。但是这是最简单最公平的检测方法。就和高考一样。
    像你说的多线程同步,我也不一定能答上来,但是我随便出一道,你也答不上来。只有算法是基础,容易一碗水端平。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3046 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 13:53 · PVG 21:53 · LAX 05:53 · JFK 08:53
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.