leetcode怎么刷题 leetcode刷题技巧

本文以曾就职于咨询公司、五百强外企及多家创业公司、现在**零售咨询业独角兽企业工作的吴江老师的真实故事为例,为大家展示他在35岁遇到“程序员危机”后,通过刷LeetCode成功跳槽加薪的经历,并分享一些他刷LeetCode来准备面试的经验。

在2018年快过春节的时候,我们部门突然被通知要开一个会,会上通知我们部门要在明年的这个时候被整体裁掉。我在这家五百强外企已经待了五年,当时虽然有这个预感,但是真的听到正式通知时,不免还是感觉有点震惊。

从得到通知开始,经历了大约半年的时间处理各种善后工作,然后我也以35岁的“高龄”开始准备面试。本来以为可能这个过程会比较艰难和痛苦,但是其实通过在力扣网站上进行过充分的准备以后,结果挺顺利。

leetcode怎么刷题 leetcode刷题技巧

在面试了五六家公司以后,拿到了好几个不错的offer。我选择了一家新零售创业型的外企,担任中国区技术负责人,收入比之前还高了一截,我到现在也一直很满意这份工作。

聊聊这次面试的心路历程和准备过程,还有一些个人看法吧。

1、怎样刷题才有用?

做任何事情之前,都得先做一些大致的估算。一开始我和大家一样,准备技术面试,就直接从撸起袖子在力扣上刷题开始。在做了几天题目以后,感觉效率有点不对。

于是,我做了个简单的数学题:如果每天最多可以做两道题目,上午一道下午一道。而力扣上有 1000 多道题目,这意味着我最快也要一年半才能把上面的题目做完。坚持 100 天也不过能做 200 道题目,这对于需要马上找工作的人来说显然不现实。

所以,我及时地改变了策略:

首先,确保每周掌握一类题目,这样最多两个月就能掌握所有常见的算法题目类型。然后,做几次力扣的周赛。坚持到每次完成所有的题目,而且最后的排名保持在前 20%,就可以积累对算法的信心。掌握了算法题目以后,再花一些时间练习系统设计题目。找一些典型的系统,画一下结构图,写一些关键部分的代码,以加深对系统各个组件作用的了解。

很多人惧怕在面试的时候做算法题,其实这些算法题和你平时解决的问题的难度是差不多的。只要你用平时解决问题的方法来解决这些题目就能过关。

小贴士

很多人看到别人介绍成功经验只看到别人刷了很多题,这其实是一种错误归因,就像太阳并不是听了公鸡的叫声才升起的。

面试成功需要很多要素,甚至还需要一些机缘巧合,但堆刷题数量恰恰是最不重要的一个,盲目刷题只会给你一个在进步的假象。如果只是每天做一到两道题目对自己有个交代,其实大量时间是浪费在自己本来就已经会的技能上。

我的算法基础也并没有多么深厚。动态规划类的题目我以前掌握得并不到位,也是这次找工作的时候反复练习掌握的。这说明,有针对性地练习确实有助于水平的进步。

2、算法题怎么做?

讲点干货,以力扣第 53 题最大子序和 为例。

这个题目是要求一个整数数组中至少包含一个元素的连续子数组的最大和,最直观的是暴力解法,行不行呢?显然不行,因为组合数的复杂度太高了,数组中的元素稍微大一点肯定接受不了。这个解法在面试的时候,一般就不要展开说,不然会让面试官误解你还想沿着这样不可行的思路进行下去。

既然暴力求解不行,那么看到问题的结构自然会联想到它可以分解为结构相同但规模更小的子问题,那么这样的问题很典型地就是要用动态规划来求解。

但是动态规划中如何定义子问题其实不容易,拿这道题来说,很容易就会做出错误的一种定义。比如,我们经过简单推导以后,会认为可以通过划分出最后一个元素,然后求除了最后一个元素以外的子数组的最大和,还有这两者之和,一共这么三个结果,来比较得出哪个结果最大,如此循环来找到答案。这样做,会导致找到的数组并不是连续子数组。

面试时犯错,不要紧张,我们平时工作也会犯错误,面试官要看的可能正是你的思考和排错的过程,这比直接给一个正确答案有时更能体现你的能力。

我们回到算法的中间过程,发现结果不正确的原因在于“除了最后一个元素以外的子数组的最大和”这里和后续的数组元素连接上,通过修改算法,构造一个包含当前状态最后一个元素的子数组和,最后对这个构造出来的数组遍历一次最大值,就是正确的解法了。

小贴士

解法从简单到复杂、从犯一些常见错误到修正的过程,而不是好像一切都是自然地一出手就完美,这才是面试的时候,经常会遇到的场景。我们一定要注意,和面试官进行来往的沟通很重要。

重点在于:先给出一个能工作的解法,然后和平时工作一样,找出重复的计算过程,再消除它们,就可以给出优化后的解法。甚至有的时候,题目没有做出来,但仍然可以在面试中取得好的表现印象。

3、系统设计题怎么答?

俗话说,麻雀虽小,五脏俱全。系统设计题的目的是考察程序员平时工作中对哪些系统组件比较熟悉,并且有过深入钻研。

比如说短网址服务要考虑哪些方面呢?首先是接口设计,这是直接面向用户的,比较初阶的想法是要做到简单、友好,更高级一些的就要考虑到边缘用例和安全考量。这时,提出一个在创建时的认证机制就可以体现出你思维的全面性。

但是短网址服务往往更多地考察的是关于容量设计的业务知识,这里面涉及的知识很综合。比如不同的容量要采取不同的编码,以平衡性能和成本,支持高并发的前提下避免碰撞等等,这些都很见功夫。

一定要在设计的基础上,展示一些硬核的肌肉,比如数据表设计、错误处理等,这样就可以很好地给人留下务实、不只停留在纸面设计的印象。

小贴士

在准备这种题目的时候,不妨当成一个了解自己未来本职工作的契机。除了技术方面以外,系统设计题的亮点,往往还在于你能说出一些关于资源计划、任务分配、团队协调的答案。尤其是对于需要带团队的同学来说,这会大大增加你面试通过的机率。

最后,再次强调,刷再多的题目,也代替不了在面试中表现出的自信。尽情地发挥自己的优点,让面试官看到你就是最适合这个岗位的候选人吧!

4、面试如何高效制胜?

想要了解更多面试准备技巧?吴江老师撰写的这本《高效制胜——程序员面试典型题解》可以给你更多解答。

leetcode怎么刷题 leetcode刷题技巧

高效制胜 程序员面试典型题解(全彩印刷)

全书采用数十道力扣真题,不仅讲解了这些题目的解法,更重要的是帮助读者掌握举一反三的高效刷题方法,事半功倍地斩获理想offer。

不仅如此,LeetCode还请吴江老师以这本书中的题目为线索,并新增了一些相关题目,为扣友们定制了一份“高效制胜”版学习计划,可以一边看书学习技巧,一边在力扣进行实战演练。

leetcode怎么刷题 leetcode刷题技巧

学习计划是力扣新推出的高效提升工具,每个计划以天为单位,根据不同学习主题规划题目任务,通过“有计划性”的练习帮你快速掌握相关知识,还能养成每日打卡的好习惯。

本站部分内容由互联网用户自发贡献,该文观点仅代表作者本人,本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

如发现本站有涉嫌抄袭侵权/违法违规等内容,请联系我们举报!一经查实,本站将立刻删除。

(0)

相关推荐

  • 运营商大数据获客平台是什么?运营商大数据获客系统

    运营商大数据获客平台是什么 在通信时代,企业更多地依靠传统的线下广告、印刷和分发宣传册、电视广告、购物中心宣传屏幕等方式来获得客户和声誉。 在大数据时代,企业已经成熟地完成了从线下到线上的完美转型,更加注重通过大数据技术为企业自身带来更准确的营销模式,更高效、更快地获取客户,希望通过大数据提高营销能力,带来更好的宣传体验和营销转型成果 如何利用运营商的大数据…

    2023-02-22
  • 网络营销软营销是什么意思 网络营销软件技术推广

    网络营销软营销是指通过利用网络营销软件技术推广产品或服务,以便更快更广泛地传播信息,达到推广目的的一种网络营销方式。随着互联网的普及和技术的不断发展,越来越多的企业开始注重网络营销软营销方式的使用。本文从四个方面详细阐述网络营销软营销的意义和使用价值。 一、提高效率 网络营销软件技术推广作为一种高效而又节省成本的营销方式,可以大大提高企业的广告宣传效率。相较…

    创业杂谈 2023-05-17
  • 微信封号了怎么办怎么解封?

    有网友表示,自己的微信登陆提示“被封号”了,这该怎么办呢?今天我就教大家如何解封,其实步骤很简单哦~ 2、这里填写手机号码,这个手机号必须和微信绑定的,但可以不是自己的;接着会提示你发短信,按要求照做就行; 3、返回,搜索公众号【微信团队】添加,进去后点【自助用具】-【辅助验证】,按要求操作就可以解封啦~ 怎么样,你学会了吗?这里提醒大家,别用非官方的微信A…

    2023-02-18
  • 快递加盟店排行榜,驿站代理点靠什么赚钱

    作为快递包裹代收寄的站点,快递驿站因为门槛低,投资小受到不少人欢迎。快递驿站为人们取寄件带去了便利,正逐渐成为我们日常生活中不可或缺的存在。一些新手不知道,怎么申请开店,下面就来详细了解一下。 1、实地考察 在开快递驿站之前,需要对周边的市场环境进行了解。可以先从周边小区的入住率、日常快递包裹量、是否存在同行竞争等情况,来判断该区域是否适合开一家快递驿站。 …

    2023-07-18
  • 流量包购买哪里便宜(流量包怎么买划算)

    网上的流量卡都有优惠期吗?网上购买的流量卡可以一直使用吗?接下来,我们来了解一下吧。 网上便宜的套餐,都是各地运营商为了冲业绩,在基础套餐上增加了一些流量包和减免活动,然后放给下面的代理商去进行推广,这些套餐资费便宜,所以办理的人也不少,一旦业绩完成之后,就会停止申请。 注意:网上的套餐虽然便宜,但是一般都是有优惠期的。 如图所示,选择运营商不同,套餐不同,…

    2023-05-26
  • 五个偷偷发财的经验,如何利用自身技能挣钱

    今天要分享给大家一些偷偷发大财的10个挣钱的建议方法: 第一条建议是:做有趣的产品评测。它不仅能够吸引粉丝,还能够带来广告宣传合作的机会。 第二条建议是:拍摄DIY教程。假如你有一定的手艺,可以利用自己的技能分享教程,并在视频中加入你的推广链接或群号,引导粉丝消费或订阅你的课程。 第三条建议是:拍摄一些有趣的生活小技巧,例如厨房小窍门、衣物搭配技巧等等。这些…

    2023-06-16
  • 汽车钥匙手表什么原理,手表做埃安钥匙怎么做

    日前,零豆科技针对国内市场推出了零豆D2汽车手表,尽管看起来可能没有Apple Watch那般洋气,但它所具备的功能却足以令每一枚智能手表迷们“垂涎欲滴”。下面就跟小豆一起来看看吧! 这款手表从外观来看十分简洁、大气。它不仅配置了佛橡胶表带,还为用户提供了铝合金、不锈钢和陶瓷三种表圈的选择。尽管设计略显“简约”,但它丝毫不影响他那与生俱来的贵族气息。 零豆汽…

    2023-07-25
  • 钟睒睒什么时候成为中国首富,钟睒睒成中国首富半个小时

    南都湾财社讯 记者陈盈珊 11月8日,胡润百富榜发布;11月10日,《福布斯》2022中国内地富豪榜发布。这两份榜单,排名第一的均是农夫山泉的创始人钟睒睒。胡润中国内地富豪榜上,钟睒睒以4550亿身家连续两年当上中国首富。而在另一份福布斯富豪榜上,钟睒睒的身家623亿美元,折合人民币也超过4400亿。 蝉联中国首富的钟睒睒,究竟凭什么生意创富?钟睒睒更为外界…

    2023-01-28 创业杂谈
  • 百度健康是什么(百度健康我的订单什么时候发货)

    为什么选择千手接口中台? 1、应对个人信息保护法规:独立部署,商家可以获得对个人信息的保管权。 2、迭代快速:插件化框架,可按插件迭代,开发速度快,稳定性高,方便升级与维护。 3、与ERP深度对接:可与ERP的可销库存、店铺定义、上下架、库存分配等深度对接,实现更高效的流程。 4、减少ERP和WMS的改造:套餐管理、波次管理、自动上下架和调价、优惠促销的平摊…

    2022-05-24
  • 企业微信怎么对外显示职务,如何查员工在其他公司任职

    我们在使用企业微信的时候,看到很多企业微信名片上显示企业微信朋友圈、小程序、公司官网等入口,企业微信或者微信好友点击就能查看,这是怎么实现的呢?   企业微信如何自定义对外信息展示? 第一步:管理员新增自定义字段 管理员登录企业微信后台 ,进入【我的企业】-【通讯录管理】-【成员资料显示】-【对外资料显示】- 【修改】-【添加自定义信息】页面。 以…

    2023-08-27
  • 新手如何做外贸生意 外贸业务员如何开发客户

    外贸业务员如何开发客户是任何一个外贸人永远都绕不开的话题,网上各种工具,方法的分享不计其数。有心的人会从中受益匪浅,有些人也只是点赞喜欢加收藏,有些人或者浅尝辄止,半途而废,无功而返,然后继续陷入死循环,无客户,开发客户,再然后躺平,甚至离开。 究其原因,为何?仅仅是和个人能力和执行力有关吗?当然不全对! 看到这篇文章的小伙伴,尤其是有30 危机的朋友,中恳…

    2023-02-22 创业杂谈
  • 电子商务网站如何推广 电子商务网站推广方案

    随着互联网的不断发展,电子商务已经成为了现代商业的主要趋势。越来越多的企业选择在互联网上开展业务,但是随着竞争的加剧,想在互联网上取得成功变得越来越困难。因此,电子商务网站的推广显得尤为重要。本文将从搜索引擎优化、社交媒体推广、广告投放以及内容营销四个方面阐述电子商务网站的推广方案。 一、搜索引擎优化 搜索引擎优化(SEO)是指通过对网站进行优化,使其在搜索…

    创业杂谈 2023-05-21