Category: leetcode

【二维线性DP】力扣2312-卖木头块

摘要: 一个二维线性 DP 的比较困难题 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 各位好,本文我们看一个二维线性 DP 的问题。DP 状态有两个维度,这里的两个维度都是附加信息,状态的推导过程

【棋盘DP】力扣2684-矩阵中移动的最大次数

摘要: 棋盘 DP 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文我们来解决一个比较基础的棋盘 DP 的问题,以列号 j 为阶段,行号 i 作为附加信息。 题目 2684. 矩阵中移动的最大次数

leetcode第375场周赛

摘要: 本文是 leetcode 第 375 周赛的记录。主要涉及的算法包括惰性更新、模下快速幂、组合数学、区间合并 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 总览本周进行了 leetcode

力扣1670-设计前中后队列

摘要: 基于链表的设计 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文看一个基础数据结构的设计问题。难点在于增删的时候如何维护指向链表中间节点的指针。细节处理非常繁琐,不容易过。 题目请你设计一

力扣2216-美化数组的最少删除数

摘要: 定式化的动态规划、技巧性的贪心 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文的题目有动态规划和谈心两种解法。其中动态规划的思路比较定式化,更好想一些。贪心需要一些灵感和技巧,并且涉

【搜索难题】力扣2258-逃离火灾

摘要: 搜索题,思路简单,细节复杂 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 各位好,本文我们来看一个搜索题。思路比较清晰,不过细节很复杂。需要针对人和火搜索两次。第二次既可以 BFS 也可以

力扣32-最长有效括号子串

摘要: 最长有效括号子串 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 我们之前了解过有效括号如何判定的问题,本文我们看一个进一步的问题:在字符串中找到最长有效括号子串,有两种方法,除了栈以外,还有

【二分难题】力扣2560-打家劫舍4

摘要: 值域二分+其他算法 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文我们看一个最小化最大值的问题,值域二分是解决这种问法的常规思路。对于二分的答案,一般还需要别的算法来判断该答案能否满足要

力扣1016-子串能表示从1到N数字的二进制串

摘要: 数学算法+滑动窗口+哈希表 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文我们看一个需要一点数学推导,同时又综合了滑动窗口和哈希表的问题。 题目给定一个二进制字符串 s 和一个正整数 n

力扣730-统计不同回文子序列

摘要: 不同的回文子序列个数 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文我们看一个比较难的问题,算法的核心是动态规划,根据动态规划阶段的不同选取方式,有普通的区间DP,以及序列自动机两种做法

力扣940-不同的子序列

摘要: 不同的子序列 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文我们看一个比较难的问题,算法的核心是动态规划,根据动态规划阶段的不同选取方式,有普通的一维线性DP,以及序列自动机两种做法。

力扣2106-摘水果

摘要: 一个比较综合的前缀和问题 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 各位好,今天我们来看一个比较综合的问题,涉及到前缀和、二分和滑动窗口的综合,并且非常考验耐心。 题目 2106. 摘水

力扣206-反转链表

摘要: 面试最爱问的反转链表,迭代和递归 【对数据分析、人工智能、金融科技、风控服务感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:潮汐朝夕我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 各位好,本文我们来看一下面试当中非常爱问的反转链表,当你去面试别人不知道问什么题的时候,就问

力扣1630-等差子数组

摘要: 力扣1630-等差子数组,等差数列的判定 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 题目1630. 等差子数组 如果一个数列由至少两个元素组成,且每两个连续元素之间的差值都相同,那么这个

力扣2389-和有限的最长子序列

摘要: 一个比较综合的简单题 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 各位好,本文我们来看力扣上的一道我认为不错的题目,2389. 和有限的最长子序列,本题在力扣上标记为简单题,但该题综合了排

力扣1390-四因数

摘要: 力扣 1390,算数基本定理与素数筛 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文看一个数论题,属于算数基本定理的应用,当然本题也可以用枚举的方法解决。 题目 1390. 四因

力扣866-回文素数

摘要: 力扣 866-回文素数。构造回文+素性测试。 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文我们看一个题,算是素性测试的应用。此外本题枚举回文串的过程也是一个难点,值得学习。 题目 86

力扣952-按公因数计算最大组件大小

摘要: 本文详细拆解 力扣952-按公因数计算最大组件大小。分解质因数+并查集 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 各位好,本文我们来看一个数论与并查集结合的问题,综合性比较强。 $1 题

力扣372-超级次方

摘要: 力扣 372:快速幂、扩展欧拉定理 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 题目 372. 超级次方 你的任务是计算 ab 对 1337 取模,a 是一个正整数,b 是一个非常大的正

力扣1813-句子相似性3

摘要: 双串单向双指针 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 各位好,今天我们来看一个双指针的问题,力扣 1813。本题比较纯粹,就是双串单向双指针,没有综合其他的算法。 双串单向双指针是双

力扣1658-将x减到0的最小操作数

摘要: 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 各位好,今天我们来看一个单串单向双指针的问题。本题的特点是随着窗口左端点 left 变大,合法的窗口右端点 right 也会变大,这样的话我们

leetcode第325场周赛

摘要: 本文是 leetcode 第 325 周赛的记录。主要涉及的算法包括值域二分、双指针、动态规划 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 总览本周进行了 leetcode 第 325 场

leetcode第322场周赛

摘要: 本文是 leetcode 第 322 周赛的记录。主要涉及的算法包括单串单向双指针、哈希表、BFS、BFS 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 总览本周进行了 leetcode 第

leetcode第321场周赛

摘要: 本文是 leetcode 第 321 周赛的记录。主要涉及的算法包括数学、贪心、逆向思维、频数前缀和 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 总览本周进行了 leetcode 第 32

最大子数组乘积

摘要: 最大子数组乘积,最大子数组和的一个变种问题 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 在文章 最大子数组和的三种解法 中,我们详细拆解了最大子数组和这个问题,并且了解到这个问题有三种解法

环形数组上的最大子数组和

摘要: 环形数组上的最大子数组和,有动态规划、前缀和两种解法。 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 在前一篇文章 最大子数组和的三种解法 中,我们详细拆解了最大子数组和这个问题,并且了解到

【树形DP】力扣968-监控二叉树

摘要: 力扣 968, 状态比较复杂的树形 DP 题目 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 各位好,在文章 【树形DP】树的直径 中,我们学习了树形 DP 的经典题目:树的直径,理

【DP难题】力扣1595-连通两组点的最小成本

摘要: 力扣 1575,比较难的图论题,抽象之后是最小边覆盖问题,有状态压缩DP和二分图最大匹配两种解法。 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 今天我们来看一个比较难的图论题,力扣

leetcode第300场周赛

摘要: 本文是 leetcode 第 300 周赛的记录。主要涉及的算法包括哈希表、模拟、逆向思维、动态规划。 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 总览这是 leetcode 第 300

【逆向思维】力扣780-到达终点

摘要: 逆向思维 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文我们看一个逆向思维解决的问题。在文章 逆向思维 中,我们汇总了一些逆向思维的问题,可以参考。 $1 题目 780. 到达终点 给

力扣2104-子数组的范围和

摘要: 通过一个问题看分别计算各个元素对答案的贡献的思想 【对数据分析、人工智能、金融科技、风控服务感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:潮汐朝夕我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 在文章 面试好题连载 中,我们提到了适合作为面试题的几个标准大致如下: 对于

leetcode题目卡片

摘要: 刷题笔记中质量比较好的题目汇总 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 这是汇总我早期刷题时写的笔记,当时每一道题都会抄题,然后手写思路,当然后来就不这么做了。 因为只是自己的笔记,大

leetcode难题卡片

摘要: 困难题的手写笔记汇总 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 这是汇总我早期刷题时写的笔记,当时每一道题都会抄题,然后手写思路,当然后来就不这么做了。 因为只是自己的笔记,大部分的都是

leetcode第279场周赛

摘要: 本文是 leetcode 第 279 周赛的记录。主要涉及的算法包括下标映射、模拟、设计、惰性更新、前缀和 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 总览 A题: 下标映射 下标映射

【分类讨论】力扣29-两数相除

摘要: 本文详细拆解 leetcode 29-两数相除,主要涉及分类讨论。 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 在文章 面试好题连载 中,我提到了我认为的适合作为面试题的标准,这里复习一下

力扣437-路径总和3

摘要: 在树结构上维护前缀和的问题 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 在文章 面试好题连载 中,我提到了我认为的适合作为面试题的标准,这里复习一下: 对于适合面试的题目,以下几个

leetcode第254场周赛

摘要: 本文是 leetcode 第 254 周赛的记录。主要涉及的算法包括贪心、快速幂、值域二分、搜索。 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 总览: A题: 水题 B题: 贪心 参考:

【DP难题】力扣1411-给Nx3网格图涂色的方案数

摘要: 使用动态规划解决计数问题 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 各位好,最大子数组和这个系列此前连续写了八篇,有些审美疲劳了。今天我们换换脑子,看个使用动态规划解决计数问题的一个例子

leetcode第249场周赛

摘要: 本文是 leetcode 第 249 周赛的记录。主要涉及的算法包括模拟、频数前缀和、计数DP、哈希映射。 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 总览 A题: 水题 B题: 频数前缀

力扣689-三个无重叠子数组的最大和

摘要: 同时预处理前缀和和后缀和 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文看一个前缀和的问题。需要同时维护前缀信息和后缀信息。 $1 题目 689. 三个无重叠子数组的最大和 给定

力扣1352-最后K个数的乘积

摘要: 一个前缀和的变种问题 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 前缀和是力扣上非常常见的一个算法知识点,题非常多。在文章 【模板】前缀和与差分 中,我们介绍了前缀和与差分的算法原理和代码

力扣962-最大宽度坡

摘要: 本文是力扣 962 的题解,单调栈的基础应用。 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 各位好,本文我们看一个单调栈的问题,力扣 962。本题解决之后,可以作为组件,直接解决力扣 11

力扣1124-表现良好的最长时间段

摘要: 本文是力扣 1124 的题解,力扣 962 的进阶问题,单调栈的应用。 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 各位好,在文章 力扣962-最大宽度坡 中我们解决了力扣 962,本文我

leetcode第242场周赛

摘要: 本文是 leetcode 第 242 周赛的记录。主要涉及的算法包括双指针、值域二分、队列、动态规划、前缀和、博弈。 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 总览 A题: 单串单向双指

力扣1707-与数组中元素的最大异或值

摘要: 用 01Trie 处理 01 串的统计问题 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文我们看一个 01Trie 的应用的问题,统计 01 串上的某些信息。比经典 01Trie 在节点

leetcode第52场双周赛

摘要: 本文是 leetcode 第 52 双周赛的记录。主要涉及的算法包括字符串、模拟、双指针、前缀和、二分。 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 总览 A题: 字符串 B题: 模拟 参

leetcode第241场周赛

摘要: 本文是 leetcode 第 241 周赛的记录。主要涉及的算法包括枚举子集、分类讨论、设计、动态规划、组合数学。 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 总览 A题: 枚举子集 参考

力扣1722-执行交换操作后的最小汉明距离

摘要: 加边过程中动态查询具体连通分量 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 在文章并查集-加边过程中维护具体连通分量中我们了解了用并查集在加边过程中动态查询具体连通分量的原理。 本文我们看

【设计难题】力扣1797-设计一个验证系统

摘要: 设计难题,验证系统 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文我们看一个设计问题,第 48 场双周赛 B 题。本题的设计以哈希表为核心,类似的设计题汇总见文章 设计-功能系统。此外还

leetcode第240场周赛

摘要: 本文是 leetcode 第 240 周赛的记录。主要涉及的算法包括扫描线算法、双指针、单调栈、动态规划。 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 总览 A题: 扫描线算法 参考: 扫