lucifer

我花了几天时间,从力扣中精选了四道相同思想的题目,来帮助大家解套,如果觉得文章对你有用,记得点赞分享,让我看到你的认可,有动力继续做下去。

这就是接下来要给大家讲的四个题,其中 1081 和 316 题只是换了说法而已。

leetcode.jpeg

我花了几天时间,从力扣中精选了五道相同思想的题目,来帮助大家解套,如果觉得文章对你有用,记得点赞分享,让我看到你的认可,有动力继续做下去。

前四道题都是滑动窗口的子类型,我们知道滑动窗口适合在题目要求连续的情况下使用, 而前缀和也是如此。二者在连续问题中,对于优化时间复杂度有着很重要的意义。 因此如果一道题你可以用暴力解决出来,而且题目恰好有连续的限制, 那么滑动窗口和前缀和等技巧就应该被想到。

除了这几道题, 还有很多题目都是类似的套路, 大家可以在学习过程中进行体会。今天我们就来一起学习一下。

由于 lucifer 我是一个小前端, 最近也在准备写一个《前端如何搞定算法面试》的专栏,因此最近没少看各大公司的面试题。都说字节跳动算法题比较难,我就先拿 ta 下手,做了几套 。这次我们就拿一套 字节跳动2017秋招编程题汇总来看下字节的算法笔试题的难度几何。地址:https://www.nowcoder.com/test/6035789/summary

由于 lucifer 我是一个小前端, 最近也在准备写一个《前端如何搞定算法面试》的专栏,因此最近没少看各大公司的面试题。都说字节跳动算法题比较难,我就先拿 ta 下手,做了几套 。这次我们就拿一套 2018 年的前端校招(第四批)来看下字节的算法笔试题的难度几何。地址:https://www.nowcoder.com/test/8536639/summary

实际上,这套字节的前端岗位笔试题和后端以及算法岗位的笔试题也只有一道题目(红包的设计题被换成了另外一个设计题)不一样而已,因此也不需要担心你不是前端,题目类型和难度和你的岗位不匹配。

本文是我的 91 算法第一期的部分讲义内容。 91 算法第一期已经接近尾声,二期的具体时间关注我的公众号即可,一旦开放,会第一时间在公众号《力扣加加》通知大家。

动态规划可以理解为是查表的递归(记忆化)。那么什么是递归?什么是查表(记忆化)?

记得我初中的时候,学校发的一个小册子的名字就是母题啥的。

大概意思是市面上的题(尤其是中考题)都是这些母题生的,都是它们的儿子。

熟悉我的朋友应该知道,我有一个风格:”喜欢用通俗易懂的语言以及图片,还原解题过程“。包括我是如何抽象的,如何与其他题目建立联系的等。比如:

如果把这个思考过程称之为自顶向下的话,那么实际上能写出来取决于你:

  • 是否有良好的抽象能力
  • 是否有足够的基础知识
  • 是否能与学过的基础知识建立联系

如果反着呢? 我先把所有抽象之后的纯粹的东西掌握,也就是母题。那么遇到新的题,我就往上套呗?这就是我在《LeetCode 题解仓库》中所说的只有熟练掌握基础的数据结构与算法,才能对复杂问题迎刃有余。 这种思路就是自底向上。(有点像动态规划?) 市面上的题那么多,但是题目类型就是那几种。甚至出题人出题的时候都是根据以前的题目变个条件,变个说法从而搞出一个“新”的题。

这个专题的目标就是从反的方向来,我们先学习和记忆底层的被抽象过的经典的题目。遇到新的题目,就往这些母题上套即可。

那让我们来自底向上看下第一期的这八道母题吧~



博客内容遵循 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 协议

本站使用 Material X 作为主题 。
载入天数...载入时分秒...