先逐条阐述: 第一,美国大厂招的工程师就像上世纪初工厂流水线工人一样,需要具备一点技能经验,甚至拿到license,才能获得上岗资格。 而计算机领域由于太宽广,分支复杂,不存在这么一个统一性的generalized的执照,隔行如隔山,所以就诞生了一些最基本的最 常用的也最容易学的入门资格考试,这个就是LeetCode的本质和起源。 其他行业,凡是技工相关的,在美国,都需要持证上岗,医生需要动手术,需要问诊,也属于技工的一种,凡是吃经验饭的职业,都要每隔几年就更新一下license,比如房 地产执照,电工执照,维修执照,等等,为什么,因为几年以后的技能标准可能发生改变,使用的器材和原材料发生改变。LeetCode也是类似,每隔几年,题型就出现调整,是最新的业务知识和市场热点发生了迁移,在公司层面,需要更新更高效的解法来应对。 第二,LeetCode里面涵盖的题目难度分为三种:easy,medium, hard模式。 easy题型 适用于大一大二的学生,只要熟悉算法理论,背下来,多做几套题目,熟悉代码规则,少些bug,就可掌握,这部分是送分题。 medium需要一些分析,特别是题目本身的含义,经常是不常见的一些应用题,但是这类题背后的逻辑线代表着公司在做产品的时候,会出现相同等级难度的对产品功能的分析、细化和演绎甚至需要掌握某些常识性的推理技巧,才能完成,这部分知识点需要大学高年级甚至读了硕士的层次。那么hard模式,是大家几乎从未遇到过的,很awkward比较稀奇古怪的题型,这类题只是平时在工作中 属于不容易遇到的,对于普通的developer岗位,通常hard模式的题型根本不会放出来 ,这是针对一些senior level的或者有一定工作阅历和多年经验储备的职级,大概率会有面试官来问,为什么?因为高职级的岗位会遇到各种各样的疑难杂症,即便你之前没遇到过,之后也该具备足够敏捷的悟性和灵感去解决这种怪问题。 所以针对不同level的候选人,题型可以千变万化,不存在两个人会拿到同一套面试题 ,因为背景不同,专业熟悉度不同,工作过的环境不同,学历不同。透过你能回答出来的问题模式,面试官可以清晰的判断你过去的知识储备与经验积累落在哪个区间,这些都是针对未来给你的薪资待遇的匹配上最有说服力的依据。 那么LeetCode考试到底有没有道理,姐认为还是有的,如果有人...