投简历中兴笔试编程题时遇到不会的编程题该怎么办

注册 | 登录
投稿、稿件问题联系Q:
专为互联网人打造的365天成长计划,500门视频课程随便看,构建你的产品、运营知识体系。
2015年已经来到石榴如火的5月,没错,小半年就快过去了。很多同学正在毕业找工作,也有些同学在准备着2015的暑期实习。而进入4A、BAT、500强是很大部分营销和传媒人的选择。在求职或求实习的过程中,你一定希望看到前辈们的实际求职经历或者经验心得分享吧。不管是企业的招聘流程、求职环节设置、面试题、学长学姐的真人故事,都能让你更胸有成竹和收到鼓舞
嗯,最近身边好多朋友问我有关面试的一些经验。大概在2014年9月初拿到BAT offer之后当时就准备写一篇面经分享给大家来着,但是由于一直在做一个创业项目,一直没抽出时间(好吧,其实就是我懒~)。
先简单的自我介绍一下。我叫王文旺,大家可以叫3w,华科新闻学院的一只大四狗。我整个求职过程中投了3家公司BAT,均是产品经理的职位。最后也都很庆幸的拿到了offer。下面将根据我的面试经历来进行讲述。
一般一些大型互联网公司在校招之前都有提前批的,一般BAT的提前批都集中在8月中下旬左右。对于目前大四的同学来说这个信息可能没用了,主要提醒大二大三的同学,以后找工作的时候要关注一下这个点。我当时就是在实习的时候投了阿里和腾讯的提前批。我们学院的安排是大三下都在外面实习,当时实习的单位是百度,实习时间近6个月。由于我实习所在部门没有hc,没法留下来,所以8月的时候就开始寻思找工作的事情了。自己就提前关注了一下其他公司的校招动态,得知了阿里和腾讯的提前批,就都找了一些朋友帮忙内推。
第一点:面试前一定好好准备!做个有心人~
在最开始的时候对自己的信心还比较足,觉得面产品没啥好准备的,直接随机应变就好,也就没怎么好好准备。后来证明这个想法纯粹就是扯淡,也让我在阿里内推面试中失利,受打击很大。
一、Alibaba内推面试
我8月6号从百度办的离职,5号晚上百度的小伙伴给我送行,当时晚上在吃饭的时候接到了阿里面试官的电话,餐馆里声音很嘈杂,当时就和面试官解释了一下说现在在外面吃饭能不能明天给他打过去。他说,这样啊,那我找个时间再给你打吧。第二天我也没好意思给他打过去,那几天就一直等他电话。8号一个北京的朋友给我送行,我们一起在外面玩,在肯德基的时候接到了面试官的电话,这次不敢再拒绝了,连忙找了个角落去面试了。(ps:这个时候只想说运气好背,7号在酒店等了一天没敢出去,没接到电话,偏偏就8号出去那么一会接到面试电话)
面试官首先让我做个简短的自我介绍,然后问了几个问题。
说出你印象最深刻的项目?
你觉得90后身上具备什么素质?
简单的谈谈你在百度旅游6个月的实习经历?
你有什么要问我的么?
由于之前自以为是的觉得面试没什么好准备的,再加上环境因素的影响。当时一点面试的状态都没有,T^T~ 在回答的过程中就感觉自己的思维很混乱,调理不够清晰,说了很多废话,有些都没答到点子上。面完感觉就很不好,感觉没戏了,后来和朋友一起玩都没啥心思了。
果然过了几天就接到阿里招聘组发来的拒信,印象很深刻的一句话是:在这一次内推中,很遗憾我们没能“幸福牵手”。当时看到这封邮件心里很失落,很受打击。觉得辜负了给我内推的面面(冰岩的好朋友,在阿里工作,接到面试失败的消息都没敢和她说。在我拿到了再次拿到阿里offer之后我才敢和她说,才知道其实她是可以知道我面试结果的,怕我不好意思也没问我,当时就好感动)。
我这个人有个特点就是,每次失败之后会很难受,但是绝对会认真的去反思去总结。
接到拒信之后很受打击,开始进行反思,回忆整个面试过程,感觉最大的原因就是不在状态,自己没好好准备,连最基本的自我介绍都没准备,怎么可能面试的好? 想清楚原因之后,我就躺在酒店睡了一觉,准备起来之后好好总结(一个小习惯,每次难过就会睡觉,睡着了就不会想其它的,可以平复自己的心情,醒来了就会好很多)。
阿里的这次内推对我的影响很大很大,没有这次内推的失利,也不会意识到自己的缺点,在后面的一场面试(腾讯产培)估计也不会好好准备了,那样过的可能性估计没有。
告诉大家的第二个点:每一次面试之后都一定要好好总结,反思。每一次面试肯定都会有表现不足的地方,一定要深刻的认识到不足并针对性好好准备。这样一次一次,面试能力肯定会大大增强的。
嗯,在我办百度离职的前一天,找了我们的经理聊了一下。有关面试这个,她根据自己多年来的校招经历给了我一点建议。
这也是我要告诉大家的第三点:面试的时候一定要自信,面试官每天面试那么多人,能记住的就那么几个,自信让她更容易记住你。
大家在面试的时候一定要能够快速进入状态,一定要表现的非常自信,即使遇到自己不会的。自信这个状态肯定有助于大家的发挥,如果你一直在紧张过程中,还能好好面试么?
二、Tencent产品培训生
带着满心的遗憾离开了帝都,去江苏参加了发小的婚礼。在此过程中接到了腾讯产品培训生的笔试通知,也顺利通关笔试,需于23-25号前往北京参加面试。腾讯产培生也是我在实习阶段投的一个职位,投的时候还一直在犹豫要不要投,因为这个确实比较难!后来回忆起来,幸亏当时自己投了。
告诉大家第四点:有时候要敢于去尝试,谁也不能保证结果怎样,经历最重要。
简单的介绍一下背景,产品培训生是腾讯针对产品经理这个职位设置的一个特招。每年会从全球招30个人进行重点培养,共在北京、上海、深圳、海外4个点面试。
由于自己实习在北京,所以最后还是选择前往了北京。当时收到面试通知的时候我就在考虑要不要去参加面试,当时真实的想法是这个太难了招的人太少了,要求又太高,感觉自己去估计也过不了。而且最主要是我刚从北京回来又要跑过去… 后来和我妈妈说,妈妈就一直鼓励我去试试,说失败了也没啥关系,当作校招前积累经验嘛。就这样,21号晚上从江苏回到武汉,22号上午找小白聊了一下有关校园二手街()后续发展方向问题,22号晚上出发前往了北京。
腾讯产品培训生面试共有6轮(简历筛选-笔试-群面-专业初面-HR面-总监面),23号上午起来之后就梳理了一下自己前面准备的内容,下午参加群面。我们那组群面共有10个人,8个研究生,2个本科生,而且!!只有我一个男生……
我们那组群面的议题是:如何用互联网思维做校园产品? 看到这个题目,当时心里就暗暗乐了一把,因为平时在冰岩的时候主要就是做的这个啊。整个群面共1个小时,10分钟自我介绍,40分钟讨论,10分钟的总结陈述。由于自己比较擅长,整个群面表现的也比较好。
有关群面给大家几点建议:
群面过程中一定要拿出笔和纸进行记录,包括每个人名字(来不及就写编号)和讲的内容(即使你不是记录者)。记录下来后续再分析一些问题时会有帮助的。后面你会明白我为什么这么说
无论这个话题你擅长与否都不要抢先说话,可以先听听组内其他人的看法。这样,遇到不擅长的,其他人的想法可能会给你灵感。遇到擅长的,根据其他人的想法可以更好的去总结。我当时就在第8个才说的,即使我有很多可以说的
如果你对时间比较敏感把握比较好,可以做timer。面试开始的时候我就做了timer,整个节奏我也把握的非常好。遇到说了很多废话的就委婉的打断(可控情况下尽量别打断),说了比较少的也和大家提议听听那个人的看法。
在自由讨论环节,宁愿少说话也千万别说废话啊。群面过程中经常遇到话很多但是大部分都是废话的人。这样的人往往都会被刷掉的。每次说话之前衡量一下,这段话该不该说,有没有说到点子上去。没有的话尽量不说,不要怕话说的少,40分钟肯定会遇到一些你比较擅长可以参与讨论的点的。我身边就有一个朋友在群面就只说3句话,群面结束面试官直接点名说,你可以直接进入下一个环节,其他人等待通知。群面说话一定要求精!
不要主动去做leader,leader是在讨论的过程中无形中出来的。没有必要主动去争取,群面过程中最好的效果就是有一些自己非常独到的见解提出来,能够说到问题的重点上。这样即使不是leader过的可能性也很大。
团队氛围超级超级重要!!!这一点所有人都需要注意。在群面过程中千万不要出现出争执的情况,一定要有一个好的团队氛围。即使别人提的点超级差,可以直接指出来,但是千万别争执。一般争执的人会被直接pass掉,而且会影响整个团队的。
总结陈述一般是记录者来说,在总结陈述之前一定要理清楚,调理要清晰,说重点就好。总结陈述完如果有漏掉的比较重要的点其他人可以提醒一下~
后来听其他组面试的朋友说,还有一些其他议题:
设计客厅电视的遥控器。
从功能、运营、监管、战略是个反面讨论打车软件。
抓出生活中不方便的现象,设计一款app解决这个需求。
23号下午收到了群面通过的通知,后来得知我们那组群面就过了两个,另外一个是研究生。晚上回去就休息了下,简单的回顾了一下今天的面试,看了一下准备的内容就睡觉了。
24号中午参加专业初面,初面的面试官基本没问我简历上的内容,先让我简单的自我介绍了一下。接着让我评价一下自己在群面中的表现,我就说感觉自己还不错,并从几个方面进行了佐证,说明了一下自己的优势。然后问我觉得其他几个人的表现怎么样?知不知道有哪几个人进了?那个人问什么会进?还问我觉得哪几个人会进,到最后被刷掉的那些人又为什么没进?这个时候就体现出了群面时记录的重要性了,如果没做详细记录就很难回答好这个问题,另外每个人名字和特点需要牢牢记住!
问完了这个问题之后,就提了一个问题:如果腾讯现在有一项语音识别方面的专利,具有10-12岁小孩的语音识别能力。让现在利用这项专利,对微信功能进行改进?有哪些地方可以改进?我就针对性的结合了微信的功能和使用场景说了几种,并一起探讨了下。
接着又问,如果这项专利利用在手机上,可以设计哪些功能?我又结合具体需求讲了几种。接着问,如果使用在生活中呢?我列举了几种,然后他就一直问我,还有没有?我一连说了几十种大大小小的需求。他还接着问,我实在想不出来了,就让他给点提示。然后我又根据提示继续说,又接着问还有没有?我绞尽脑汁说了几轮之后,实在想不到了,就说没了。
这个时候他也没为难我,然后问,你刚提出的几十种需求中你觉得哪一种最好。我就说:将语音识别和控制结合家居进行使用。然后说了一下为什么会选择这个点,在实现过程中有哪些难度?这个需求大不大,能不能带来好的效果。然后结合具体场景去设计这个产品,说的过程中感觉他还挺满意。然后问,觉得整个中国对这个需求有多大?我结合具体情况大概算了算,然后给了个数值,并说明为什么我觉得会是这个数。然后又说如果让我在北京去推广这款产品,觉得会有多大市场和需求?能带来多少用户?
就针对这个问题一直在追问,一直在深挖,从各个方面去进行考察。这种有点类似于压力面了,所以大家一定要淡定稳重一些,这样才能想出比较好的解决方案吧!
哦,在针对微信设计功能的时候,还问了我觉得目前微信有哪里设计的不好?我当时说了两个点:
可以直接被好友拉近一个群里面。并结合具体情况说明了一下为什么觉得设计不合理。听我说完之后,他问了句,那为什么微信团队没有改进这个功能呢?我就提出了自己的几个看法。
朋友圈在中间有一个版本提示说,不能发纯文本了,让大家减少使用这个功能。然后说了一下自己的看法。说完之后他问了一句,那为什么后面又没有去掉这个功能呢?答曰:应该是根据数据分析,发纯文本的频率还比较大吧。然后我就结合自己朋友圈发表的情况进行举例。
还让我为微信再设计一个功能,我当时提出了设计短视频的想法(果然6.0来了)。然后说明了一下为什么会设计这个功能,可能会遇到哪些难题啊什么的。
这一轮我面了1个多小时,我其他朋友都只面了40分钟不到。而且整个面试过程,那个面试官一点也不笑给人的压力就很大。不过所幸,面完了直接和我说,你可以在门外等下,等待去面下一轮,当时就可开心了。还问他联系方式,希望加一下微信,结果来了句:这个不太方便给,我就悻悻的站在了门外。
第三面是hr面,hr面是一个非常漂亮非常有气质的姐姐。聊的超级欢,问了一下我第二面情况,都聊了些什么?告诉她之后她说了句,怎么你面了那么久就面了几个问题。我回了句,那个哥哥问题都问的好深啊啊啊。
Hr面主要问了以下几个方面:
我实习和做项目的经历
还具体问了下冰岩作坊的团队发展和培养模式,说她早就听过冰岩了(Ps:哈哈,我大冰岩威武,然后我就狠狠的吹嘘了一番)。
也问了我自己在群面中的表现和其他人的表现,和初面面试官问的差不多。
另外就是一些比较常规的问题啊,问会不会读研啊,对工作地点有什么要求啊什么的
整个hr面面的很开心,然后让我问她一个问题。我就说,我表现的怎么样?能过不能过?这次北京区会招多少人啊什么的?她来了一句,这些我都不能告诉你是秘密。我就无语了,然后也问了微信也不加我,说如果进了再加。就这样惊险愉快的面完了二三面。
大家遇到压力面的时候一定不要紧张,淡定一点,告诉自己紧张也不能解决什么问题啊。脑子一定要转灵活。
当天下午就接到了通过面试的通知,然后让25号下午去参加总监面。得知通过的时候就超级开心,感觉自己能走到最后一面就很庆幸很不容易了,所以最后一面也不强求,正常表现就好。
最后一面总监面,貌似是移动业务部那边的老大,专门从深圳飞过来给我们面试。总监面总共就问了两个问题。
谈谈你在百度六个月的实习经历,都收获了些什么?你对整个旅游行业的发展怎么看?百度旅游处在什么位置?如果让你做百度旅游的产品经理,你下一步会怎么走?会设计哪些功能?
如果让你负责腾讯地图下半年的运营,你会怎么去规划运营策略?要给出具体的说明。
第一个问题自己出现了一个失误,再说收获了什么的时候,说了一大推做的项目,说了一大推废话。然后被直接打断了,我就赶忙直接说结果和论点了。
还是那句话,面试的时候大家一定不要说废话!!直接先说重点,然后有时间在佐证。被打断了当时就有点虚了,心想完了……
第一个问题后面几个自己以前有思考过,所以回答的还可以。
在回答第二个问题的时候,像这种比较大的方面,一般很难很快速的想出好的答案,我当时就和他说,能借我一支笔和一张纸,然后给我3-5分钟的时间让我梳理思考一下头绪嘛?然后,拿了一支笔一张纸在那进行分析。分析的过程中刚好面试官接了一个电话,后来思考的时间就更多了。进来的时候,我就开始给他汇报我的思考。感觉答的还不错,他一直在点头,后面还给我分析了一下。
最后问我,你还有什么其他要问我的么?我就问,你对我这次面试有什么建议么?他说,这个他不能说,需要写进评价系统里面,如果我进来了可以到时候直接去看。然后说了句:年轻人就是要敢想敢冲!!
一般到了总监面这种级别的时候,问的问题一般都会是一些行业大方向的问题,大家对这方面需要有一些自己的思考和见解,平时需要多积累。
整个产品培训生的面试到此结束,在9月初回学校收到offer通知的时候,超级超级的开心。回想起整个经历,感觉一个非常重要的因素就是我的心态非常好!最开始感觉太难,所以期望和报的希望不是很大,只是尽力去面,能走多远走多远。到最后一面的时候,自己也不那么强求,保持一个平稳的心态。感觉这个心态确实很重要!!
后来腾讯来武汉校招的时候,和校招hr一起吃了顿饭,得知这次报产品培训生总共有16000余人,最后招了40余人,我是武汉区唯一的一个产培。当时自己就惊呆了!!刷的比率那么狠,也很庆幸!!如果最初的时候我知道那么多人报名就招那么一点,可能我真的不会去北京参加面试了。有些事就那么的巧合~
三、Baidu内推面试
26号去了一下百度,打算去看一下小伙伴。刚一到,部门经理就刚回来,说这边产品新增了一个名额,问我愿不愿意去试试。简直是突然掉下来的幸福啊,砸了一脸!!然后就立马兴冲冲的去面试了。
当天下午直接面完了初面和经理面,因为比较熟,所以整个面试的节奏也比较快,就具体询问了一下自己的实习经历以及在学校做的项目。这个在前面面试过程中基本都有遇到过,所以过的比较快。
当天面完就说可以直接给offer了,简直不能太幸福!!!我当初得知我所在部门没hc的时候还难过了一段时间呢,没想到这次来北京运气那么好!!本来最开始说不需要经过总监面的,晚上通知我说,总监那边说要看看,让我第二天早上来一下,然后第二天早上就去参加总监面了。问的问题,也是我对旅游整个大行业怎么看?哪里可以有突破的契机?觉得哪个点最重要,最有可能成功?然后该如何去设计?
到武汉之后,部门经理就说,总监那边反馈说还不错,可以直接给offer了!!!
因为在百度实习,所以百度这边整个走的就比较顺。可能主要告诉大家的一点就是:一定要对自己实习的内容非常了解,同时要有自己的一个见解。对整个大方向发展问题也要多去了解,多思考!一般到了总监面不会问一些很细致的问题。
四、Alibaba校招面试
27号从北京回来之后就开始专门做校园二手街()了,大概9月6号拿到了腾讯的offer通知,基本就没参加其他校招了。阿里那边是内推没过的同学会直接进入校招系统,当时给我发了面试通知,然后就抽时间参加了阿里的面试,阿里总共就3面(初面-复面-hr面)。基本面试环节都差不多,所以我就抽几个不一样的点进行讲解一下。
初面面试官是百度出来的,还认识LBS的总监。当时也简单的问了下实习经历和收获,同样让我谈谈旅游这个行业的发展。
问了一下冰岩的结构和发展模式,问我在团队做的最成功的一款产品是什么?如何做好这个产品的?有哪些努力?另外超级感兴趣的就是我目前做的产品校园二手街()了,针对这个产品聊了好久,也聊的非常非常的细致,很深入的挖掘。
问我实习过程中最有成就感的一件事是什么?遇到的最大的挫折是什么?怎么解决的?学到最有价值的东西是什么?
你觉得什么样的产品经理才是一个优秀的产品经理?怎样的产品才是一款不错的产品?
针对产品校园二手街()深入提问。当时提到了说这个产品目前已经拿到了几百万的投资,他问了句,那你会直接创业嘛?答曰:考虑到自己的能力问题,可能会比较偏向于先直接工作,等培养了这方面能力之后在考虑创业吧。(这个啊,即使想直接创业也别诚实的说出来啊)
简单的问了一下会不会考研?对工作地点有什么要求?薪资方面怎么看?
大学有没有谈恋爱?为什么会分手?为什么现在不谈恋爱了…… T^T怎么问这种问题!
最近最受打击的一件事是什么?怎么处理的?
其他的就比较普通了,都是一些比较常见的问题。
在对薪资和工作地点读研这些问题的时候,大家就别那么诚实了。说别太看重薪资,要表现比较看重产品线。具体的大家根据情况来说就好了!
恩恩,写到这里基本整个找工作环节中的经历都写清楚了,自己对于这方面的思考和见解也表现的比较完善,希望对大家有用!
最后,从产品的角度进行一个总结。用产品思维去解读面试,把面试官的考核看成一个用户需求,怎样才能给面试官一个好的用户体验?最好的效果就是给出一个超出预期的体验,做到这一点,你的面试就肯定不成问题了。
原则:产品思维
番外篇①——如何做一份还不错的简历
产品的简历最好一页就可以了,但是要充分利用这一页纸的空间。最后希望能够给人层次分明,简约的感觉,就像一款优秀的产品一样。
不要写废话,不要写自己不熟悉的内容。写上去的每一点都要非常清楚了解,不清楚的宁愿不写。每一句话都要精简直接,有些项目成果可以用数据说明!
不要所有经历都写上去,相关经历重点描述,不相关的就要懂得舍弃啊…… 如果没那么多相关经历,但是对于重点经历可以细化一下写清楚!
简历写完一定要层级清晰,逻辑清楚。产经必须具备的基本能力。
简历一定要经常修改,它是求职的敲门砖,一定要做好每一个细节,细致去打磨每一个点。比较好的简历能够让人一眼抓到重点,层次分明,读起来感觉很舒服。不相关的内容就别写了!
番外篇②——如何有针对性的准备
回忆梳理自己整个与产品相关的经历,根据项目经历做一定总结。
深入透彻的了解自己简历上的内容,需要对简历极其了解。尤其是最核心的内容,自己需要去深入挖掘,去理解!
对一些常见问题可以提前准备,用一些专业术语进行解答,同时辅以自己的经历和见解进行佐证。
做一个有心人,要阶段性的进行总结!
其他的一些就比较正常的准备了,比如面试哪个公司就就去了解一下这个公司的产品文华blabla什么的。
【给大家列一下常见问题】
说出你印象最深刻的项目?
你觉得产品经理需要具备什么样的素质和能力?
你觉得怎样的产品才是一个成功的产品?成功的产品有什么标准?
你觉得产品设计和产品运营有什么区别和联系?
你觉得90后身上具备什么素质?
在实习过程中(或者项目经历)最优成就感的一件事是什么?遭遇的最大挫折是什么?如何看待这次挫折?怎么解决的?
你在实习中学到最有价值的东西是什么?
你在实习中最累最辛苦的一次情况是什么?当时怎样撑过去的?
如果在产品设计过程中遇到和上级或者同事出现分歧?你会怎么解决?
平时都会使用一些应用和网站?觉得有哪些点设计的比较好?
最近一年最想做的产品是什么,为什么想做,打算怎么做?
你每周至少浏览一次的网站有哪些?
最近半年有没有遇到特别感兴趣的新产品?
最近一个月你关注的IT行业动态有哪些?
如何看待微信的成功?(针对单独的产品)
嗯,绞尽脑汁也只能想到这些常见问题了。欢迎大家补充!大家一定要做个有心人,一定要认真准备啊,别和我一样脑残,认为不需要准备。别等真正遇到失利了才后知后觉!!
这篇面经写了我12+个小时,头都写大了,手都敲断了,最核心最重要的就是4个字:产品思维!请大家自行体悟!
嗯,终于写完了,最后:
感谢团队冰岩作坊的培养!
感谢实习导师的指导!
感谢一直支持我陪我一起奋斗的小伙伴!
感谢那些并肩作战的战友!
感谢为这篇文章分享点赞的朋友!
祝愿大家都能找到自己满意的工作!
最后附上一句话:你若想得到,就别只是期望,人生短暂,经不起等待!
嗯,看到这里的大家都是真爱了,我偷偷的花了一天工作的时间呕心沥血的写了这篇面经!不幸被老大发现我用了工作时间干其他事,说不给我发这天的工资了。哭!!大家快和我一起证明一下,这时间花的还是值的!!!
作者:王文旺(华中科技大学新闻学院大四应届生)
来源:/articles/my-bat-interview-experience.html
收藏已收藏 | 593赞已赞 | 614
投稿、稿件问题联系Q:
产品经理群运营交流群营销交流群
文案交流群
Axure交流群
PM要学点技术
关注微信公众号
24个回答25人关注
5个回答6人关注
37个回答35人关注
8个回答9人关注
2个回答2人关注
13个回答57人关注为什么明明面试题比工作遇到的算法已经简单那么多,面试的时候面一下算法还是让很多人义愤填膺呢?
我的图书馆
为什么明明面试题比工作遇到的算法已经简单那么多,面试的时候面一下算法还是让很多人义愤填膺呢?
程序员很贵的好么,随随便便几十万一年好么,妈蛋,这么贵的东西,还不允许我验一下货!!!!!!!!!!!!!!!!难道你买房不验房!!!!!!!!!!难道你买车不验车!!!!!!!!算法是基础中的基础好么!!!!!!!又不是考你难到逆天的题目,快排这种基础中的基础,就算不刷题,不做任何准备也应该在半个小时之内写好好么!!!!!何况,代码风格,思维方式,细心程度这种东西,难道不是写两行code就高下立现的么!!!!一个边界条件不做检查,思路不清,东加一个变量,西加一个函数的程序员,你放心把项目交给他!!!!!就好像一个医生跟你说,虽然我不知道体温计该量哪儿,也不知道你究竟有没有发烧,但是我会写处方,给你开两片退烧药就是了,妈蛋难道你就会放心大胆的去吃么!!!!!对于一个好的程序员,算法题是必要条件好么!!!!不是说能答出算法题就一定是一个好程序员,但连基础的算法都没有掌握的就一定不是好程序员好么!!!!!醒醒吧,骚年!面对一份十几二十万的工作,做一点功课没什么不好,完全值得好么!!!!第一次用咆哮体回答,还是匿了吧。
,人力有时而穷
就说二叉树。我大二学数据结构,大作业的一部分是自己实现一个平衡二叉树,没有任何问题。要是那个时候别人来问我各种细节,毫无压力。然后我现在研二,自那次大作业以后再也没有实现过平衡二叉树。需要使用各种索引的时候都是无论是自己实现还是直接调用库,都不是平衡二叉树。然后现在要是来问我关于平衡二叉树的各种细节,当然我还记得左旋右旋左右旋右左旋,但你要我把所有的指针赋值都准确回答出来,我一定办不到。包括其他很多经典算法,思想我都有印象,细节我只能抱歉。这类知识性的东西不经过长时间多次反复是不会形成长期记忆的。所以才会有临时查的情况产生。而且就算形成了长期记忆,这跟骑自行车这种技能还不一样。只要时间够长,总会忘掉的。我觉得面试者反对的不是问算法,而是单纯地考察这些跟他工作无关的知识。因为他需要花时间去特地准备。而这准备又跟他的工作无关(面试之前的工作)。如果面试官问的算法与面试者的工作相关,他却答不上来,确实可以判断他之前的工作有问题,进而他的能力也许有问题。如果无关,这就成了单纯的应试。我们都知道应试教育在人们心目中是什么样的存在。讨厌什么的就可以理解了吧。当然,面试也和应试教育一样。问的问题也许并不好,但是足够公平。现阶段也没有别的更好的问题可以问。毕竟不能指望面试官先了解应试者的背景再有针对性地提问。再加上现在大家争着找工作的市场情况。所以作为应试者,还是安心准备为上。再说,不管有用没用,知识多了总没有坏处。
,果粉码农,
“工作中用不到这么多算法”就是个错觉。有个算法能漂亮地解决一个问题,我不知道,然后自己倒腾了一个弱弱的方法。嘿,你猜怎么着?能跑!于是我告诉自己,这工作果然用不上什么高深的算法。直到有一天,冒出个竞争对手的产品比我快1000倍。
,还有四个月,真的就要毕业了...
如果以求职者的角度来看,很多求职者的项目与技能和这些面试算法题有出入和差别,所以出现了leetcode,剑指Offer等专门应试面试算法的网站或书籍(个人极度反感,但是现实就是大部分面试就要考这些类型的,你不刷题不看就是容易被毙掉)。所以很多求职者认为自己的技能还没有表现出来,就被面试的算法直接给枪毙掉了,自然有所不服,无论你认为这是多么简单的算法,也许他在工作的时候,根本和这些算法完全不搭边,工作个几年不忘光才怪。那么除了算法以外,如何挖掘出求职者的闪光点,这也是对面试官的一个考验,因为考验算法的不外乎就一个根本目的:他到底聪不聪明。但是算法不好,就一定证明他不聪明,或者工作能力不好了吗?我觉得不一定。这就是要看面试官和面试者的交谈了,面试官去尽力挖掘,面试者去尽力表达推销自己,这就是一个交互的过程。
,色情中带点纯情
先亮明观点:身为程序员,算法知识100%是必要的!本人从事的不是什么高大上的研究工作,跟数据挖掘模式识别自然语言处理云计算大数据blahblah全都不沾边。做过一段时间的J2EE开发,现在主要做基于HTML5的前台开发。看到这儿很多人要说了,不就是个做网页的嘛,做网页还用的上算法?不就是表单验证提交一下?我的回答是绝对用的上!举个例子,很多人在微博上见过tagcloud分析图,展示的是一些关键字的出现频率:&img src="/8e/9e/8e9e854af2b1dedb6f1b3ac_m.jpg" data-rawwidth="829" data-rawheight="399" class="origin_image zh-lightbox-thumb" width="829" data-original="/8e/9e/8e9e854af2b1dedb6f1b3ac_r.jpg"&这里不谈文本检索这些,只说对已知数据如何安排各个关键字的位置进行渲染。这是个很典型的结合实际的算法问题,在此我用到了wordle算法,这和我们上学时常谈到的那些算法不太一样,但很多核心思路(例如空间换时间)还是相通的。感兴趣的同学可以自行了解。这里不谈文本检索这些,只说对已知数据如何安排各个关键字的位置进行渲染。这是个很典型的结合实际的算法问题,在此我用到了wordle算法,这和我们上学时常谈到的那些算法不太一样,但很多核心思路(例如空间换时间)还是相通的。感兴趣的同学可以自行了解。接下来说说面试的问题。正式工作近9年,一直在coding的第一线,近年来也经常参与对技术人员的面试工作。我和同事们对面试时要不要涉及到算法的问题没有丝毫分歧,仍然是有必要。但算法问题如何问,也是有讲究的。我反对上来就指定一个算法让面试者写答案,例如前面有知友提到的写个快速排序之类的。这样的做法有掉书袋的嫌疑,而且除了证明对方为了面试做过精心准备,其他方面根本考核不出来。自己在面试中经常会问的一个问题:有一组长度为n的对象,每个对象里都有一个startTime和endTime,表示一个时间段。请面试者设计一个小算法,把这些对象中时间段存在重合关系的所有对象列出来。这个问题不难,但一定程度上能考验面试者对算法本身的理解和sense。对这个问题的典型讨论过程是这样的:Candidate:我想可以作个双重循环,把这些对象两两比较me:好的,这显然是个很直观的方法。那么按照你的方法,时间复杂度是多少呢?Candidate:n^2吧me:OK,那么你看看是不是有改进的余地Candidate:……也许我可以先排序,后面还没想好me:根据什么排序呢?Candidate:startTimeme:好,那么我们画个图来看看排好序后这些对象的分布Candidate:……我想到了!blahblahme:好的,那么这个算法的复杂度是多少?你能分析一下吗?Candidate:前面排序用快速排序是n*log(n),后面的过程是线性的,所以总体就是n*log(n)……当然,这是一个比较正面的例子,candidate第一时间解决了问题,但不算完美。在一些提示下发挥和表现了自己对算法、数据结构的认识,比较完整的给出了解。作为interviewer,我就足够满意了。当然也不排除有些candidate上来就能给出很好的解答,那我也没有理由去鸡蛋里挑骨头。作为interviewer,目的是快速的了解对方的能力和水平,而不是为了考住对方
,技能树点歪了走上学魔之路
我说说我的理解,很多时候其实是记不清算法的细枝末节,工作中用到了自然可以查资料查文档,甚至本来就不用知道那些细枝末节,能知道大体怎么用性能如何瓶颈在何处如果要改进可以从什么方面入手就行了。但面试的时候不一样,面试官一个劲追问细节,甚至要提笔现场实现一个详细版本要考虑各种边界情况什么的(我了个去没有文档没有IDE我连String类有没有内置subString这种函数都不记得)难免让人心里没底。举个例子我以前实习的时候遇到过一个问题,可以归结为资源分配,用一个图模型去建模,最后化成一个线性规划模型。我觉得如果要面试,问到这里就差不多了。最多问问迭代求解和直接求解的区别和各自的优点,算法复杂度什么的,理论性强一点还可以问问原对偶问题……至于把梯度下降或者矩阵求逆都要现场写一遍,那就没必要了。当然了,面算法岗位和面开发岗位侧重点也不同,还是要结合具体岗位说的。如果是前面有人提到的PHP工程师或者网页前端,我觉得在实际工作中用到什么高深算法的机会应该很少了,面试时候多问问实际的细枝末节才是更能看出水平的。
,只是……一个好人……
1. 算法很重要2. 算法和数据结构,是当年NOI给我留下最多的财富之一,到现在我还是分分钟完爆大学的所有同学3. 面试带算法,没问题,毕竟都是按万算的工资,算法可以看一个程序猿很多方面的能力,比如代码风格,比如思维,比如边界处理,你是可以工作中用搜索的方式解决,但你不懂的话得来的答案并不一定符合你team的风格或者你公司的业务,没有哪个算法是一层不变的4. 但是面试不应该仅仅停留在算法上,搜索发达的今天,懂得获得信息的能力一样重要5. 最后,算法和数据结构是你通往高阶程序猿的必由之路,不懂这个,你看得懂个屁源码,用开源的东西看不懂代码=慢性自杀,天坑懂不懂
,用互联网精神改造精神病院
什么,工作用到的那破玩意儿也叫算法?我又不是在MSRA工作,现实就是,在大部分程序眼里,只有面试的时候会用到算法,其他时候?algorithm ?wow,what is that
,不想当码农的程序员。
我自己是完全支持面试考算法题的,因为考算法题可以直观地考察一个人的思维过程,编码能力,对数据结构/时间复杂度的理解,和基本功。但在面试的时候考一些刁钻的算法题就太无聊了。譬如Palantir面试的时候考过用矩阵优化的Fib数列log N求第N项,譬如非让你O(n)时间在长度为n的数组求1...n中少了哪k个数,譬如考二叉树前序后序求有多少种中序这类你做过就会不做过很难想出来的题,的确是无聊透顶。因为考这种问题完全不能反映出一个人的能力。现在在创业公司每周都会面试新的程序员。面试的时候一定会考算法题,有关实现的问题,和有关OOP接口设计的问题。有时我会考python中os.path.join的实现 因为可以反映出一个人对conner case有没有一个基本的思考,和一个人对编程语言的基本熟练程度。有时我会考一个DFS灌水法求图中最大连通分量的大小。这能反映出一个人对算法最基本的了解(这要求不高吧),对时间复杂度的认识,对正常逻辑(30行)实现把握的能力。面试最难的问题(其实一点都不过分)我会问这样一道哈希表的问题。给定平面上n个点的坐标,求一条直线y = ax+b,过平面上最多个点。我不知道这道题有没有O(N log N)的解法,但我认为在面试那么短的时间里给一个O(N^2)用哈希表的解法完全没有问题。这一道题考察了对哈希表的理解,对算法的优化,对特殊情况的处理(a = 0, a = infinity),还有代码能力和基本功的体现。** 如果有N log N解法请私信我!!所以面试官真的没有在难为你们。虽然在工作中的逻辑实现甚至很少能用到DFS/BFS,但面试的过程中问这些问题是对一个程序员基本修养的一个考察。不要求在面试的30分钟里把题都做对,但在这个过程中很清楚的能看出来一个程序员在今后的工作中的Debug能力,编码习惯,能否写出可维护的代码,以及和未来同事沟通的能力。最后的最后,程序员的最终目标不是写可以跑的程序,而是在与同事合作中编写出可维护可扩展高效率的代码。这大概就是为什么要考算法题的原因。
,每天混迹在Python|Java|C之间
我觉得是题目太简单导致的问题。面试官觉得,我擦,那么简单都不会。面试者觉得,我擦,没法调试没法查资料我怎么写的对,这种基础题目写错就没分啊。然后不欢而散。面算法的时候,我一般允许对方做不出来,但是至少要给一个解决思路。就算你告诉我你用谷歌一下可以解决也比遇到算法题就放弃反感大惊小怪好得多。如果面社招的,我出的题目一般都是可以用暴力解决掉的搜索题这种难度的 ,我直接允许对方上网查资料,给予对方一台装好开发环境的电脑去解决,甚至是来面试前给一个homework。题目不难,所以有的同学用暴力解决,有的会用简单的搜索,也有的会用A*这类比较漂亮的解答方案。从而区分度还是很好的我觉一直得比较重要的是对问题的解决能力,至于你用什么工具我并不在意,我所提供的工作环境网络都是畅通的,能够找到有用资料的能力也弥足珍贵,远比单纯的说背个二叉树遍历好太多了。一家之言,仅供参考,如果觉得这种面试深得汝心,也欢迎投简历给我,哦,工作地点是上海
,移动互联网领域JAVA端一支小考拉
这题又成功的引起我的吐槽欲了。面试到底应该问什么题?现在发现好多小公司的人事与面试官根本对自己的项目所需要什么样的人不清楚不了解不关心。一种面试官就是,我也不知道要什么样的人,基础过关就成,从网上搜来的不知道什么时候也不知道哪家公司还是哪个无聊人写的面试题,来,同学,先做上一份吧。做完了看看成绩,嗯,不错嘛,全然不管人家答的题和你要的人有没有相关性。员工入职后,这不能做那不能做,原因是你项目相关的东西,面试的时候都没问。另一种面试官,写一堆的算法呀,逻辑呀,力求找个高手,低层工作的程序员谁会那个,干活一个比一个快,也不见得还记得几个算法。真正记得住算法的人你感觉不错,人家开的工资你老板又不同意。面试官同学,你现实点儿成吗?要么你找老板多要点儿工资来请人,要么你就按老板给的工资请的合适的人。老想以老板给的工资请个高手来,还总是埋怨现在的人水平太差,看看行情成嘛,别浪费自己和大家的时间。------------------------------对于真正想招人来干活不是招来供着的,请明确以下几点。招15K以下的程序员,就别问算法什么的了,多问点儿你项目中可能出现的问题看看人家的解决思路,对当前项目中用到的技术的熟悉程度,性能调优的思路,看看说话办事儿靠谱不,沟通上有没有问题。如果你说你们简历太多来面试的太多,你们还没找到人,那一定是你们招聘简历写的太烂,一上来就这个精通,那个熟练,是个人就可以投,招得到合适的人才怪,只能是浪费大家的时间。
这个有点类似于「明明高考已经比大学课程简单很多了,为什么还有70%的网友吵着要把数学赶出高考」
个人认为记忆各种算法的具体实现没什么太大意义,更有意义的是了解什么时候应该用什么样的算法。比较好的办法,就是提出一个在某种具体情境下的问题。同时给面试者一台可以联网的电脑。面试官可以坐在后面看他是如何搜索,搜索什么样的内容。以及如何选择,实现,改造算法以适应这种具体情境的。能从网上直接搜出来答案的问题都不算问题的。当然我只是做梦而已。
,哥写的不是代码,是梦想
为了照顾某些面试者的感受,只能出些算法题这种比较简单的题目。为什么说算法题比较简单呢?首先这些题目是有答案的,其次这些解题方法是可以通过简单学习掌握的,有大把的书籍和资料,可以用普通PC编程来测试验证。真正难的问题是那些需要多年的研究和实践经验积累才能弄明白的问题,需要很强的分析理解能力,并且需要很好的表达能力,能清晰准确地描述出问题的解决方案。没有特别明确的答案,要在多种方案中结合实际情况权衡利弊做出判断。
,前端工程师
撸主的工作是对算法有要求的,可现实是大量跟算法无关的工作也考算法。正如招一个看门月薪3K的公务员需要985硕士会让人气愤,就算那真的是高大上高科技的门也很难让某些人坦然的。我应聘的时候讨论的是map用各种有序树和散列法实现的优劣对比,可是工作中遇到的最复杂的算法就只是递归遍历森林而已。。。。就好像学了线代最后只有矩阵的加法和乘法用得上一样。=============其实常见的算法理解了过程之后就只是背一下适用场景、实现思路、复杂度分析之类的就能应付很多面试了,面试不太可能要求现场写完整而完备的代码的。但是既然常见的算法跟大学考试一样并不是很难可以临急抱佛脚的,那么需要用到的时候再去学不很好么?为什么我们能够普遍接受程序猿“用到什么就去学什么”的观念,却惟独对算法如此要求苛刻呢?为什么不优先把精力投放在更有用、更重要、更紧迫的方面上却要要求算法呢?能够很好地掌握跟工作岗位紧密相关的各种技能都已经很不容易、范围很广了,可是在这种情况下却依然不在这些方面做详细考察,却给人以“用数学筛人”的错觉难免难以服众。面试官真的精通这些而不是为面试而面试?面试官日常工作也用到这些?诸如此类的这些才是大多数人会遇到的让人气愤的现实。==========说白了个人觉得这是一股不太好的风气,正如某些lisp派鄙视新手认为一定要完全掌握才有资格参与讨论,却不愿意做一些让lisp看上去如python般和蔼可亲的帮助新手在现实环境中能够简单上手使用的东西一样。更有甚者要求Full-Stack却干的狗样儿的活儿还啃着猪样儿的粮票。其实总的来说,我是支持要懂点基本的数据结构和算法的。。。。否则偶尔遇到瓶颈的时候如果对相关方面完全没有概念的话是没办法自行解决问题的因为无从下手。
,软件开发临时工
日薄西山……纸巾盒……我好像知道了点什么……
话说现在的应届生对于算法的不重视,我认为有一部分原因是学校/学院对算法的不重视。我所在的学院是软件学院,关于算法的课程,仅仅有一门选修课。
此外,期末的考核方式也有问题,只是在纸上写一些选择填空,计算,画画步骤,写写伪码。最难的题目,也就是无空间优化版的 0-1 背包了。
其它课程的考核中,也几乎没有对算法性能的要求,只要大家写出功能就 OK。所以久而久之大家就缺少了某种精益求精的精神。
还有我觉得一些同学观念有问题,总觉得实际项目当中大部分代码对于算法的要求不高。其实学习算法一方面是掌握一些常用的算法,另一方面是学会设计和分析自己写的算法。有的时候自己撸了一段代码出来,虽然能用,但是可能性能经不起考验。此外,就算项目中使用高深的算法的代码不多,但是这却是一个区分优秀码农和平庸码农的地方啊。
因为不让用电脑……
没办法。。程序员群体太大,这年头会写个helloworld的都敢自称程序员了。
算法不是没用,只不过在大部分初级工作里用不到。我很讨厌数学,看见那些抽象的数字就会特别烦躁。。码农就码农,没什么不服气的,我就愿意当个码农,我也就是个码农级别的。觉得码农和coder之间的关系就好像建筑师和工人的关系。建筑师厉害,但是没工人盖房子能行吗?分个等级也没什么,大牛们继续加油写好用的框架。我们码农就来负责给客户实现需求。这样不是挺好吗?公司招人我觉得需要先搞清楚自己究竟是想招一个大牛还是码农。
我发现现在的人就喜欢黑自己不会的东西!
假设一家公司某个软件岗位需要招人,你如果作为面试官,肯定是希望找一个有相关背景的人。比如招聘一个搜索引擎类的人才,面试的时候,肯定要问相关搜索算法如何实现,各个算法之间有何优劣,甚至让你出示一下你在相关领域的论文等等。你说会让你当时写一段二叉树排序么?又比如招聘一个无线通信的基带信号处理软件工程师,面试问题肯定是64QAM信号如何解调,IRC算法什么情况会比MRC算法灵敏度高2dB,信道编解码中卷积如何处理,各种调制方式使用哪些算法等等。你说会当场让你写一个矩阵求逆的代码么?面试时考算法,只有三种情况:第一种是工作密切相关,这种情况下,问的算法可就不是快速排序、二分查找这种本科生的东西了。第二种情况,就是你的技术背景不匹配岗位要求。什么样的候选人不匹配岗位要求还会得到面试机会?本科应届生(硕士以上基本会在本行业中有所建树)。对应届生面试,真的想不出什么好的面试题来考察能力。应届生完全是一张白纸,你问他相关行业知识,这不是难为他么?而算法是基础,是基本功,是应届生能力和岗位需求唯一能匹配的地方。还有一种情况,就是这个岗位太新了,市场上没有几个业内人士。那想招个合适的人,只有面试算法了。比如google就经常面试算法(而且还特难)。回到题主的问题,工作中的算法是相当艰深的,每个算法背后都是一堆paper。面试问本科应届生肯定是问一些很简单的算法了。为何还让候选人很生气,我觉得主要还是因为很多面试官面试社招生也面试算法了。对于我自己,我作为面试官,如果是找个新手来培养,面试个排序啊的算法还是很有用的;如果找个有相关背景的,问的问题都是围绕岗位要求而展开的。每个行业的圈子都不大,就那么些人,大家都发过paper,身上多少都有几个专利,兜两圈都能攀上关系,你说面试的时候出个快速排序,无论出题的还是做题的,老脸都没处放。
只能说岗位不同吧,你要是涉及数据挖掘、自然语言处理这些必定是要和算法打交道,但是你说只做客户端或者前端基本上是八杆子打不着算法啊,很多大学里学过或者工作后自己自学过的人,只要不用的话,会很快忘掉的
工作中的算法是结合场景的,更像在探索,面试过程不结合场景。生硬的来一个比较古板的课本上的问题,更像考试,大家都不喜欢考试吧?
,打酱油的。
因为你的目的达到了。用简单面试题过滤了那些不想动脑子,不够聪明的的人。不要指望他们写的代码能长久的存在你的代码树中。
,利益相关:一切美食
因为大部分人智商确实不够,而且大部分人大学里确实没好好听过课
,考古;环境;计算机
算法是逻辑的体现,也是创新的基础。若你不学不知,就会出现明明有成熟算法却要自写低效代码的情况,也会出现没有算法就无解不能自写一段的情况,然而有了算法却要改进一下让效率更高的情况却是绝对不可能出现了。coder和码农,区别就这么多。或许一家公司只需要码农,但你不能否定人家对coder的追求。
1,有些面试官,图森破,就“只”会考算法,作为面试官好好准备一下面试题也是必须的吧。2,对不满意的你考了算法的,那你就问知识面,不满意你面了知识面的,那你就面系统基础,不满意你面了系统基础的,就面一些有意思的考逻辑考想法考发散思考考解决问题能力的问题(自己遇到的,一定遇到过的,还聊的有意思)…… 总分100分,让一项占分就溢出了的不能让其他猿信服。3,还不满意的,角色互换一下,让面试者面试自己。 4,还不满意?那,战三百回合跨专业领域的知识何如?有的面试,失败了也很爽。双方都爽,双赢。顺便表示一下,"程序员能力矩阵"里可面的也多了去了。
,多学习,少YY。
这其实是个伪命题。“面试题比工作遇到的算法已经简单那么多”只是你接触到的情况,并不代表普遍的情况。因为微软内部的要求和八流公司是不太一样的。我知道这么说不上台面,不过你确实可以问问做大PHP的一万块以下能熟练撸二叉树各种遍历的有几个。面试中撸不出来很多是因为不熟,工作中必然能撸,就是慢点而已。你得到抱怨的真实原因是:你们确实需要这方面的基础,这是很起码的;而慕名前来面试的人水平参差不齐,很多屌丝只是冲着高大上碰碰运气而已。我曾经有一份offer是13k,最后的大题是二分法填空。这样的人去面试你们公司,结果可想而知。他觉得自己经历过的公司根本用不到这些,所以微软这么做太事儿逼了,眼界窄而已。
IT,互联网的圈子越热,你大码农圈的两极分化就越严重。
普通程序员一个,谈谈自己的看法。我们部门有一个老程序员,面试的时候特别喜欢问快速排序。我:为什么你每次面试都问快排?他:我和xxx一起面试的时候,xxx喜欢问快排。我:算法我都忘的差不多了,平常也不怎么用。他:是啊,我也记得不是很清楚了。普通程序员需要用到算法的机会很少,慢慢的以前学的也都忘了;而经常需要和算法打交道的,会越来越意识到算法的重要性。一个只注重功能的实现,对算法不甚了解,另一个却对算法情有独钟。这两类人碰到一起是一个很尴尬的场景。我觉得这可能就是为什么会发生‘面试者义愤填膺’这类情况的原因PS.我平常工作也没用到过什么算法
,遊戲程序員
这和一般考生离开考场时的心理状况一样吧。总有一些人会诅咒出题员,而不反思自己的不足。邪恶地想,如果是面试形式,问一些很少人听过、而又未有解的题目,看看应试者的反应,心理质素如何……知识技能不足还可以不断学习,心态可能难以改变。
面试中所有问题,都不是看是否说出正确答案。
,不知道学架构还是项目管理的男猿
算法派和功能派本来就是两个门别。更何况还有一些更郁闷的事情,比如,从大数据流行起来之后,很多互联网公司都开始问程序员们大数据高并发的处理方案,很无语的一件事情。尤其是一些不用接触到那样业务的职位,甚至是没有那方面需求的公司。
,C++程序员,只写代码,不做PPT
好多人工作中用不到算法
,懂生活的码农
我不认识你,不了解你,这么多求职者,我怎么选择,怎么分辨优劣呢?只是一种手段。
,互联网产品开发者
愤怒都是对自己无能的情绪表达。
如果要立志做优秀程序员的话,算法这种东西,就是平时积累的,经常用就自然游刃有余了。。如果你比较少碰代码的话,自然就生疏了。。你说还是呀。。会写个helloworld都敢说自己掌握了某种语言的人自然就义愤填膺了。。
,Programmer/网页游戏开发/ECNU/菜鸟摄影…
楼主暴露了,MS无疑~
,我是逗比
公司招来了人可能只是做一些简单的东西。但是公司需要的是聪明的员工,算法对于你的暂时工作可能没那么重要,但是能从中看到你的思路,看到你遇到问题的处理方法。公司喜欢聪明人。但是很多人(比如我)面试问到算法题,感觉智商被压制被完爆被凌辱被鄙视,颜面扫地优越感尽失。必须暴跳如雷大骂特骂一下才能发泄好嘛?
,OOP ? FP
考算法是一种非常好的方法就是这样
,爱厨房爱摄影的徐工……
因为算法题就是用来筛去这些抱怨的人的。
,啊哈,还要介绍~
对于应届大学生中啥都不会的人而言,算法题实在是——太痛苦了。完全不会做啊!!有一回校招,一家公司笔试现场。试卷发下来,一张写了几行题目的纸,两张白纸答题。题目三道算法题,寥寥数字。——完全不会啊!一笔都写不出啊!时间2个半小时啊!你让我怎么做?让在那傻坐坐满2小时,很痛苦的。前提是不会做,那次考试做出来就几个,都直接过了。
,关注新技术,学好基础知识
作为一个在纸上写自己名字都有点费劲的人,更别提在纸上写代码了。写代码习惯删删改改,到了纸上写不了几行就乱糟糟的,心里很烦躁,原本就不是很熟,笔试时的紧张,彻底没感觉了。有些职位可能供大于求,那有点优势,多方面考察我也是能理解的,但既然是写代码,那就提供个开发环境可好。面试那么多回,只有一家公司提出上机,2家公司要求提供实际编程题。
正面回答一下LZ的问题,我觉得这种矛盾是面试者和面试官的经历不同造成的。我面试过不少人,有的面试者很有工作经验,应该也很能干活(根据其对各种技术细节的了解判断的),但是对于面试算法题很抵触。一部分人认为“我不懂算法不是照样在现在公司做业务骨干拿着几万月薪么”,那么只能说,我们这的岗位不适合他们。有一些公司,例如我待过的某著名企业管理软件公司,在里面做的事情无非就是业务逻辑和数据库ACUD,懂不懂算法不重要,因为核心的算法已经比较成熟了,而且有专门的团队在维护;而在里面工作的一些人久而久之就觉得不会算法也可以混的很好了。也有一些公司,处在比较新兴的行业,遇到很多问题是靠搜索也很难找到好的解决方案的,这时候人是否聪明已经是否有好的技术基础和行业经验,直接决定了是否能提出快速高效的解决问题。对于面试官来说,面试者的行业经验是可遇不可求的,而考察面试者是否聪明和是否具有技术基础,使用算法解决特定的问题是最直接的面试方法。
if (问题 == XXX)
if ((应聘的是不需要用到XXX的工作) && (项目/工作经验中的YYY亮点跟应聘职位相符合))
// 艹,老子是来面试的不是来被你玩的
std::cout && "呵呵" && std::
有的人亮点是研究算法,搞研究,给搞产品的人提供基础支持。有的人亮点是快速解决问题,搞产品,快速占领市场,给搞研究的人攒钱。有的人是......工作上,我一直不纠结是该造一个更好的轮子呢,还是从现有的轮子里选一个,因为我现在做的不是研究,是赶紧把东西整出来。干了这么多年“赶紧整出来”的工作,你居然来问我,重造轮子的技能~~ 万万没想到啊
,你看看你写不出代码的样子,真是丑陋
Disclaimer: 我曾多次折戟大公司的算法面试,这些公司基本是诸位耳熟能详的。文笔不通顺还请见谅算法题没有过关说明三件事:1. 没认真准备2. 没努力学编程3. 智商不过关没认真准备:因为一些原因,去年我找到实习后,仍然不得不去某著名游戏公司的电话面试。我没有做任何准备,而且当时线路非常有问题,导致双方沟通不畅,没有给出对方想要的最低的复杂度的代码。没努力学编程:一开始我和很多人想的一样,算法知道个复杂度就行,后来发现,你没实现过,你不熟练,很多的坑根本躲不过去的。用别人的代码,别人用了某个算法,你需要提升你的代码性能,如果你不从里到外的了解别人使用的这个算法,比如你用这个算法对某个数据结构增删改查,什么情况会最坏,什么情况会最优,什么情况平均复杂度不错,什么情况随机会有奇效,你怎么弄?然而真正想对一个算法在一定时间内有了解,数学、编程和算法的功底都不能差。在我以前功底不行的时候,真的是太浮躁,自以为那个复杂度自己背一背就真的可以了解。现在功底慢慢进步中,回想当年自己那副自以为是的样子,真是丑陋智商不过关:我也属于这个情况。另外适用于少部分公司面试。曾经被要求使用斐波那契堆实现代码,我直接投降。另外关于智商,其实是一个非常难以量化的指标,有的时候这人你看似反应快,实际上是他长期自我训练、刷题、刷书的结果,你说出来感觉非常牛逼非常新鲜的东西在他眼里都是搞过的。我现在的观点是,难题做不出来,还是积累太少,这就是欠练。总之,我觉得只要你想成为更牛逼的程序员的话,肯定不会不下功夫在算法上。而且下功夫在算法面试上,你怎么样也不太会吃亏。就是常常李菊福黑ACM/ICPC比赛的菊苣 都至少刷完了1周目的算法导论,真搞起算法,我相信他实力应该也不错...
,硬核玩家是啥?
作为一个被面试者,我觉得大部分「义愤填膺」的人可能反感的并不是算法题,而是非常秀下限的coding题。很多外企在国内进行的面试,面试官水平同样参差不齐,以为coding题就等于算法题。去年校招的时候,碰到一个刚面完Amazon的,听说他整个45分钟的面试,全都是类似这样的题:输入unix时间戳,输出格式化表示的当前时间。对于这种明目张胆地以招码畜为目的的公司,真的不知道该用什么表情来面对了。
看了各位的回答, 我是有点羞愧的。羞愧的是我自诩是一个程序员,而且差不多也就是能写写链表排序,插入,删除节点那种程序员,要我手动写个快排序,还是挺无力的。问题是:老子是个嵌入式程序员啊!每天写的代码不多,可能就几行吧,差不多就是配配寄存器,看个电灯,按个键,看log打印,一句代码调半天你们有没有试过!!很多时候就是某个或某几个寄存器写0还是写1的问题纠结半天,各种排列组合试一遍啊!你们debug按一下F5就OK啊,红点一点,watch窗口一开一切尽收眼底啊, 我们debug一下就要烧整个代码镜像啊,就是刷机你造不造,搞得不好还时不时给你看看你没看过的打印蹦出来你造不造?什么? 你这个模块要用到排序?老子只能google给你找一段改改参数,真的就是那种能跑就行了啊,效率应该比老子自己写的冒泡不知道好多少, 调通模块就好了。你跟老子扯性能? 你造不造linux啊, 国外的大神都把系统启动,中断处理,文件系统, 进程调度各种算法优化都搞的差不多了,你只要把驱动调通了挂上去能work了不出乱子了性能基本上OK了啊! 跑起来杠杠的啊!老子作为一个程序员,也很崇拜算法啊,大学时候ACM也是没事就看看练练啊! 现在呢? 老子要深造也不看算法啊, 就看汇编啊,什么启动代码啊,编译脚本啊,uboot啊,linux啊,各种东西看半天啊, 还要找各种文档各种博客看啊,自己光看代码根本看不懂啊,把ARM公司的各种文档当鸡汤文来看啊,很励志啊不信你们试试!!逻辑性很强还很带感呐~唉, 搞了半天老子原来连码农都算不上啊!!!哭。
面试算法表示没有感觉。最受不了的就是 都工作好几年了。问我“Java是一种________,_________,________,__________,_______,_________,_______,_________语言。”答:简单的、面象对象的、分布式、解释的、健壮安全的、结构中i的、可移植的、动态
有几个公司工作里能用到算法的。。。二叉树这种玩意绝大部分人毕业后就只是在书上才能见到了好么
馆藏&19964
TA的最新馆藏[转]&[转]&[转]&[转]&[转]&[转]&
喜欢该文的人也喜欢

我要回帖

更多关于 java笔试编程题2017 的文章

 

随机推荐